problema forumulario y captcha

Iniciado por viher, 26 Agosto 2010, 21:57 PM

0 Miembros y 3 Visitantes están viendo este tema.

~ Yoya ~

Ps ahora nose que decirte, si me dices que sabes lo que haces desde el principio al fin... No debes tener ningún problema.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

Shell Root

xD, porque no os pones el código que estais usando. Además de la CAPTCHA!
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

viher

#12
aqui el archivo principal donde aparece el form:

Código (php) [Seleccionar]
<?php 
$cryptinstall
="./cryptographp.fct.php";
include 
$cryptinstall
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
echo $row['nombre']; }
?></title>
<meta name="description" content="<? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
echo "Video ".$row['nombre']," - Categoría ".$row['cat']; }
?>" />
<meta name="keywords" content="keywords." />
<link rel="shortcut icon" href="http://www.web.com/fav.ico">
<style type="text/css">
body p strong {
font-size: 36px;
font-family:Arial, Helvetica, sans-serif;
}
body {
background-color: #FCF;
}
body,td,th {
color: #000;
font-size: 12px;
font-family: Verdana, Geneva, sans-serif;
}
a:link {
color: #000;
text-decoration: none;
}
a:visited {
color: #000;
text-decoration: none;
}
a:hover {
color: #000;
text-decoration: none;
}
a:active {
color: #000;
text-decoration: none;
font-size: 16px;
}
</style>
</head>

<body>
<table width="100%" border="0">
 <tr>
   <td>      <table width="80%" border="0" align="center">
     <tr>
       <td width="48%"><table width="99%" border="0">
         <tr>
           <td><img src="images/1225769858906691038rg1024_o.png" alt="" width="385" height="73" border="0" usemap="#Map" />
             <map name="Map" id="Map">
               <area shape="rect" coords="5,3,377,69" href="index.php" />
               </map></td>
         </tr>
       </table></td>
       <td width="52%"><table width="99%" border="0">
             <tr>
               <td width="74%">&nbsp;</td>
               <td width="26%" rowspan="2"><!-- AddThis Button BEGIN -->
               <!-- AddThis Button END --><img src="images/cerdo.jpg" width="164" height="137" /></td>
             </tr>
           <tr>
             <td><form id="form1" name="buscador" method="post" action="buscador.php">
                 <p align="left"><b>Buscador de videos:</b><br>
                   <input name="palabra" type="text" id="textfield" size="30"/>
                   <input type="submit" name="button" id="button" value="Buscar" />
                   </p>
                 </p>
                 </b>
                 </form>
             </font>&nbsp;</td>
           </tr>
         </table></td>
     </tr>
     <tr>
       <td colspan="2" background="images/fondomenu.png" height="42"><table width="100%" border="0" height="44" bordercolor="#FF99FF">
         <tr align="center" bordercolor="#FF99FF">
           <td width="10%" onmouseover='this.style.background="#DB00AF"'  onmouseout='this.style.background=""'><a href="index.php"><font size="3">Inicio</font></a></td>
           <td width="14%" onmouseover='this.style.background="#DB00AF"'  onmouseout='this.style.background=""'><font size="3"><a href="index.php?sección=categorias">Categorías</a></font></td>
           <td width="13%" onmouseover='this.style.background="#DB00AF"'  onmouseout='this.style.background=""'><font size="3"><a href="index.php?sección=pornstars">Pornstars</a></font></td>
           <td width="15%" onmouseover='this.style.background="#DB00AF"'  onmouseout='this.style.background=""'><a href="index.php?sección=espanolas"><font size="3">Españolas</font></a></td>
           <td width="15%" onmouseover='this.style.background="#DB00AF"'  onmouseout='this.style.background=""'><font size="3"><a href="index.php?sección=top_50_videos_mas_vistos">Top videos</a></font></td>
           <td width="19%" onmouseover='this.style.background="#DB00AF"'  onmouseout='this.style.background=""'><font size="3"><a href="index.php?sección=chat">Chat  (<?
$archivo = "chat/online.txt";
$lineas = count(file($archivo));
echo "$lineas";
?>
             online)</a></font></td>
           <td width="14%" onmouseover='this.style.background="#DB00AF"'  onmouseout='this.style.background=""'><font size="3"><a href="enviar_video.php" target="_blank" onclick="window.open(this.href, this.target, 'width=600,height=400,scrollbars=yes' ); return false;">Enviar video</a></font></td>
           </tr>
         </table></td>
     </tr>
   </table>
     <table width="80%" border="0" align="center">
       <tr>
         <td width="22%">&nbsp;</td>
         <td width="18%">&nbsp;</td>
         <td width="38%">&nbsp;</td>
       </tr>
       <tr>
         <td height="30" colspan="3" background="images/cuadradofondo.png"><table width="100%" border="0">
           <tr>
             <td><table width="100%" border="0">
                 <tr>
                   <td><font size="3"><b>
                     <? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
echo "<b>".$row['nombre']."</b>"; }
?>
                   </b></font></td>
                   <td align="right"><a class="addthis_button" href="http://www.addthis.com/bookmark.php?v=250&amp;username=ccccc"><img src="http://s7.addthis.com/static/btn/v2/lg-share-en.gif" width="125" height="16" alt="Bookmark and Share" style="border:0"/></a>
         <script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#username=ccccc"></script></font></a>&nbsp;</td>
                 </tr>
             </table></td>
           </tr>
         </table></td>
       </tr>
       <tr>
         <td height="30" colspan="3" align="center"><table width="100%" border="0" align="center">
 <tr align="center">
   <td><table width="100%" border="0">
     <tr>
       <td align="center"></td>
     </tr>
   </table>
     <table width="100%" border="0">
       <tr>
         <td width="68%" align="center"><p align="center"><? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
$var = $row['embed']; }
?>
<?
$consulta="select * from videos where id=$id";
$resultado=mysql_query($consulta) or die (mysql_error());
if (mysql_num_rows($resultado) == 0)
{
echo "<script type='text/javascript'>
window.location='http://www.web.com/404.html';
</script>";
}else{
echo "$var";
}
?></p>
           <p align="center"><b>Duración:</b>
             <? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
echo $row['dur']; }
?>
             | <b>Visualizaciones:</b>
             <? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
echo $row['vistas']; } ?>
             <? include ("vistas.php"); ?>
             | <b>Categoría:</b>
             <? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
echo $row['cat']; }
?>
             | <b>Subcategoría:</b>
             <? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
echo $row['cat2']; }
?>
           </p>
           <p align="center"><a href="error.php" target="_blank" onclick="window.open(this.href, this.target, 'width=600,height=400,scrollbars=yes' ); return false;">¿El video no funciona? <b>Reportar error.</b></a></p>
           <table width='76%' border='0'>
             <tr>
               <td width="62%" height='30' align="center" background='images/cuadradofondo.png'><b>Comentarios del video &quot;
                 <? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
echo $row['nombre']; }
?>
                 &quot;</b></td>
             </tr>
             <tr>
               <td bgcolor='#FFE1FF'><span style="font-size:11px;font-family:Tahoma;color:black;">
                 <?
 $id = $_GET['id'];
     $resultComen = mysql_query("SELECT * FROM comentarios WHERE id_noticia='$id' ORDER BY id ASC");
     while($rowComen = mysql_fetch_array($resultComen))
     {
     ?>
                 <font color="RED"> <b><? echo "&nbsp;".$rowComen["nick"]; ?></b></font> <? echo $rowComen["comentario"]."<br>"; ?> <br />
                 <?
     }
     mysql_free_result($resultComen);
     ?>
                 <center>
                 <br />
                <form action="addcomentario.php"
     method="post">
                   <p>
                     <input type="hidden" name="id_noticia" value="<? $id = $_POST['id'];
 echo "$id"; ?>" />
                     Nick :
                     <label for="textfield"></label>
                     <br />
                     <input type="text" name="nick" size="20" maxlength="20" />
                     <br />
                     <br />
                     Comentario:<br />
                     <textarea name="comentario" cols="28" rows="6"></textarea>
                     <br><table cellpadding=1>
 <tr><td align="center"><?php dsp_crypt(0,1); ?></td></tr>
 <tr><td align="center">Introduce el código:<br><input type="text" name="code"></td></tr>
</table><br>
                     <input type="submit" class="boton" value="Enviar" name="submit" />
                   </p>
                 </form>
                 </p>
                 </span></td>
             </tr>
           </table></td>
         <td width="32%"><script  language="javascript"  type="text/javascript">iwsrcplus="http://codenew.impresionesweb.com/r/banner_iw.php?idrotador=68560&tamano=300x250&lgid="+((new Date()).getTime() % 2147483648) + Math.random(); document.write("<scr"+"ipt language=javascript  type=text/javascript src="+iwsrcplus+"></scr"+"ipt>");</script><noscript><iframe src="http://alt.impresionesweb.com/noscript.php?tam=300x250&idp=68560&ref=68560&cod=121215" width="300" height="250" frameborder="0" marginheight="0" marginwidth="0" scrolling="no"></iframe></noscript><br><script  language="javascript"  type="text/javascript">iwsrcplus="http://codenew.impresionesweb.com/r/banner_iw.php?idrotador=68560&tamano=300x250&lgid="+((new Date()).getTime() % 2147483648) + Math.random(); document.write("<scr"+"ipt language=javascript  type=text/javascript src="+iwsrcplus+"></scr"+"ipt>");</script><noscript><iframe src="http://alt.impresionesweb.com/noscript.php?tam=300x250&idp=68560&ref=68560&cod=121214" width="300" height="250" frameborder="0" marginheight="0" marginwidth="0" scrolling="no"></iframe></noscript><br><script  language="javascript"  type="text/javascript">iwsrcplus="http://codenew.impresionesweb.com/r/banner_iw.php?idrotador=68560&tamano=300x250&lgid="+((new Date()).getTime() % 2147483648) + Math.random(); document.write("<scr"+"ipt language=javascript  type=text/javascript src="+iwsrcplus+"></scr"+"ipt>");</script><noscript><iframe src="http://alt.impresionesweb.com/noscript.php?tam=300x250&idp=68560&ref=68560&cod=121214" width="300" height="250" frameborder="0" marginheight="0" marginwidth="0" scrolling="no"></iframe></noscript>
</td>
       </tr>
     </table>
     <p align="center">&nbsp;</p>
     <CENTER>
     </CENTER>
    </td>
 </tr>
</table>
           <table width="100%" border="0">
             <tr>
               <td align="center">      <h2>Videos relaccionados</h2>
     </p><?
include ("relaccionado.php");
?></p></td>
             </tr>
           </table>
         <p>&nbsp;</p></td>
       </tr>
       <tr>
         <td height="30" colspan="3" background="images/cuadradofondo.png"><font size="3"><b>&nbsp;Categorías</b> - Pincha en una categoría para ver los videos que contiene</font></td>
       </tr>
       <tr>
         <td height="30" colspan="3" align="center"><br />            
         <a href="index.php?sección=amateur">Amateur</a> - <a href="index.php?sección=anal">Anal</a> - <a href="index.php?sección=asiaticas">Asiáticas</a> - <a href="index.php?sección=mamadas">Mamadas</a> - <a href="index.php?sección=rubias">Rubias</a> - <a href="index.php?sección=morenas">Morenas</a> - <a href="index.php?sección=lesbianas">Lesbianas</a> - <a href="index.php?sección=orgias">Orgías</a> - <a href="index.php?sección=jovencitas">Jovencitas</a> - <a href="index.php?sección=maduritas">Maduritas</a> - <a href="index.php?sección=masturbacion">Masturbación</a> - <a href="index.php?sección=famosas">Famosas</a> - <a href="index.php?sección=interracial">Interracial</a> - <a href="index.php?sección=pornstars">Pornstars</a> - <a href="index.php?sección=espanolas">Españolas</a> - <a href="index.php?sección=pilladas">Pilladas</a>  - <a href="index.php?sección=squirting">Squirting</a> - <a href="index.php?sección=hardcore">Hardcore</a> - <a href="index.php?sección=otros">Otros</a><br /><br /></td>
       </tr>
       <tr>
         <td height="10" colspan="3" align="center"><img src="images/lineafinal.png" width="800" height="2" /></td>
       </tr>
       <tr>
         <td height="30" colspan="3" align="center"><p><a href="contacto.php" target="_blank" onClick="window.open(this.href, this.target, 'width=600,height=400,scrollbars=yes' ); return false;">Contacta con nosotros</a> | <a href="index.php?sección=aviso_legal">Aviso legal</a> | Copiright Tupixxx.com 2010</p>
         <p><img src="images/badge_php.gif" width="80" height="15" />&nbsp;<img src="images/button-mysql.png.jpg" width="80" height="15" />&nbsp;<img src="images/css_powered.png" width="80" height="15" />&nbsp;<a href="sitemap.html"><img src="images/sitemap.jpg" width="80" height="15" border="0" /></a>&nbsp;<img src="images/firefox.gif" width="80" height="15" border="0" usemap="#Map2" />&nbsp;<a href=http://www.ademails.com/estadisticas1060002944.htm>
<script type="text/javascript" language="javascript">
<!--
document.write("<img src=\"http://www.ademails.com/cgi-bin/contador.cgi?ID=1060002944");
document.write("&referer=");
document.write(escape(document.referrer));
document.write("\" border=0 alt=\"Estadisticas\">");
// -->
</script><noscript><img src=http://www.ademails.com/cgi-bin/contador.cgi?ID=1060002944 alt="Estadisticas" height="15" border=0></noscript></p></td>
       </tr>
   </table></td>
 </tr>
</table>
<map name="Map2" id="Map2">
 <area shape="rect" coords="0,2,80,14" href="http://www.mozilla-europe.org/es/" target="_blank" />
</map>
</body>
</html>


aqui addcomentario.php

Código (php) [Seleccionar]
<?php 
$cryptinstall
="./cryptographp.fct.php";
include 
$cryptinstall
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>

<body><?php
function Conectarse()
{
   if (!(
$link=mysql_connect("localhost","user","pass")))
   {
      echo 
"Error conectando a la base de datos.";
      exit();
   }
   if (!
mysql_select_db("db",$link))
   {
      echo 
"Error seleccionando la base de datos.";
      exit();
   }
   return 
$link;
}

$link=Conectarse();

mysql_close($link); //cierra la conexion
?>
<?
if (chk_crypt($_POST['code']))
 {
   $link=Conectarse();
  $id_noticia=$_GET['id_noticia'];  
  $nick=$_GET['nick'];
  $comentario=$_GET['comentario'];
  mysql_query("insert into comentarios (id_noticia,nick,comentario) values ('$id_noticia','$nick','$comentario')",$link);
 echo "<center>Comentario publicado correctamente.</center><br>";
 echo "<a href='video.php?id=$id_noticia'><center>Volver al video.</center></a><br>";
    }else{
echo "El código de seguridad que has introducido es incorrecto." ;
}
?>
</body>
</html>

Shell Root

xD, por Dios, que desorden de código. Y nisiquiera escapas las comillas. Por ejemplo aquí:
Código (php) [Seleccionar]
<meta name="description" content="<? include ("config.php");
$id = $_GET['id'];
$sql = "select * from videos where id=$id";
//Instrucción a ejecutarse en la bbdd.

$squery = mysql_query($sql);
//Ejecución de la instrucción

while($row = mysql_fetch_array($squery)){
//Recuperar los datos de un registro o hilera (row) y meterlo a un array
echo "Video ".$row['nombre']," - Categoría ".$row['cat']; }
?>" />


Debería ser así:
Código (php) [Seleccionar]
<?php
  
include ('config.php');
  
$id $_GET['id'];
  
$sql "SELECT * FROM videos WHERE id=".$id;
  
$squery mysql_query($sql);
  while(
$row mysql_fetch_array($squery)){
    
$sReturn .= "Video ".$row['nombre']," - Categoría ".$row['cat'];
  }
?>

<meta name="description" content="<? echo $sReturn; >" />
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

viher

gracias por el consejo shell root pero eso no resuelve mi problema  :-\

Shell Root

Eso ya lo sé, te lo dije para que lo hicieras, esque queda muy dificil leer el código así como está.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.


~ Yoya ~

No sabes lo que haces primeramente...
Código (php) [Seleccionar]
<form action="addcomentario.php"
      method="post">
                    <p>
                      <input type="hidden" name="id_noticia" value="<? $id = $_POST['id'];
  echo "$id"; ?>" />
                      Nick :
                      <label for="textfield"></label>
                      <br />
                      <input type="text" name="nick" size="20" maxlength="20" />
                      <br />
                      <br />
                      Comentario:<br />
                      <textarea name="comentario" cols="28" rows="6"></textarea>
                      <br><table cellpadding=1>
  <tr><td align="center"><?php dsp_crypt(0,1); ?></td></tr>
  <tr><td align="center">Introduce el código:<br><input type="text" name="code"></td></tr>
</table><br>
                      <input type="submit" class="boton" value="Enviar" name="submit" />
                    </p>
                  </form>

Código (php) [Seleccionar]

<?
if (chk_crypt($_POST['code']))
  {
    $link=Conectarse();
   $id_noticia=$_GET['id_noticia'];   
   $nick=$_GET['nick'];
   $comentario=$_GET['comentario'];
   mysql_query("insert into comentarios (id_noticia,nick,comentario) values ('$id_noticia','$nick','$comentario')",$link);
  echo "<center>Comentario publicado correctamente.</center><br>";
  echo "<a href='video.php?id=$id_noticia'><center>Volver al video.</center></a><br>";
     }else{
echo "El código de seguridad que has introducido es incorrecto." ;
}
?>


El formulario se envía vía POST y le das los valores a la variable como si los datos vinieran vía GET y dices que sabes lo que haces xD.

Comprueba que los datos contengan valores, antes de procesar todo...
Código (php) [Seleccionar]
<form action="addcomentario.php"
      method="post">
                    <p>
                      <input type="hidden" name="id_noticia" value="<? if(empty($_POST['id'])){exit;}$id = $_POST['id'];


Hacer lo mismo con esto:
Código (php) [Seleccionar]

<?
if (chk_crypt($_POST['code']))
  {
    $link=Conectarse();
   $id_noticia=$_GET['id_noticia'];   
   $nick=$_GET['nick'];
   $comentario=$_GET['comentario'];
   mysql_query("insert into comentarios (id_noticia,nick,comentario) values ('$id_noticia','$nick','$comentario')",$link);
  echo "<center>Comentario publicado correctamente.</center><br>";
  echo "<a href='video.php?id=$id_noticia'><center>Volver al video.</center></a><br>";
     }else{
echo "El c&#243;digo de seguridad que has introducido es incorrecto." ;
}
?>


Y para que sirve la función chk_crypt()???
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

viher

hize lo siguiente:

addcomentario.php

Código (php) [Seleccionar]
<?
if (chk_crypt($_POST['code']))
  {
    $link=Conectarse();
   $id_noticia=$_POST['id_noticia'];   
   $nick=$_POST['nick'];
   $comentario=$_POST['comentario'];
   mysql_query("insert into comentarios (id_noticia,nick,comentario) values ('$id_noticia','$nick','$comentario')",$link);
  echo "<center>Comentario publicado correctamente.</center><br>";
  echo "<a href='video.php?id=$id_noticia'><center>Volver al video.</center></a><br>";
     }else{
echo "El c&#38;#243;digo de seguridad que has introducido es incorrecto." ;
}
?>


la función chk_crypt() es del script del captcha

y en video.php

Código (php) [Seleccionar]
<form action="addcomentario.php"
      method="post">
                    <p>
                      <input type="hidden" name="id_noticia" value="<? if(empty($_POST['id'])){exit;}$id = $_POST['id'];
  echo "$id"; ?>" />
                      Nick :
                      <label for="textfield"></label>
                      <br />
                      <input type="text" name="nick" size="20" maxlength="20" />
                      <br />
                      <br />
                      Comentario:<br />
                      <textarea name="comentario" cols="28" rows="6"></textarea>
                      <br><table cellpadding=1>
  <tr><td align="center"><?php dsp_crypt(0,1); ?></td></tr>
  <tr><td align="center">Introduce el código:<br><input type="text" name="code"></td></tr>
</table><br>
                      <input type="submit" class="boton" value="Enviar" name="submit" />
                    </p>
                  </form>


pero con este último código no me carga el formulario al ver la página.

~ Yoya ~

No te carga porque el parámetro id que viaja vía POST no contiene ningún valor...

Pueda ser que seria vía GET, cambiarlo por esto:
Código (php) [Seleccionar]
<? if(empty($_GET['id'])){exit;}$id = $_GET['id']
Si no carga, es porque no recibes el parámetro id via GET y por lo tanto el captha tiende a fallar...
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.