Código PHP:
$cogechiste = mysql_query("SELECT * FROM chistes WHERE id = '".$_GET['id']."' LIMIT 1");
$cogidochiste = ($row = mysql_fetch_array($cogechiste));
$nombre = $row['nombre'];
$chiste = $row['chiste'];
| |||
![]() No tengo mucho conocimiento en esto, por favor, quisiera saber si esto es correcto: Código PHP: |
| |||
Respuesta: Es correcto? No debes usar datos recibidos por GET o POST o COOKIE directamente en consultas a tu base de datos por razones de seguridad. En este caso, si lo que esperas es un número, puedes hacer asi: $id = $_GET["id"] - 0; Esto te asegura que en la variable id tienes un número. Luego, si cada chiste tiene su id unico, no necesitas poner el LIMIT 1. También sería bueno verificar si la consulta dio bien antes de tomar el resultado. No entiendo para que la asignacion de $cogidochiste. Te pongo el codigo un poco cambiado: Código PHP: |
| ||||
Respuesta: Es correcto? No estoy de acuerdo con el "restar 0", no me parece lo mejor. Tampoco dejar una variable (como lo es $nombre) sin setear, ya que si no entra en la condición no existirá y además que es costoso el mysql_num_rows. Otra...usar un limit comparando un PK?...en si, lo haría así: Código PHP:
__________________ Mi punto de partida es Que Bueno Lo Nuevo |
| |||
Respuesta: Es correcto? He optado por esto y no funciona. ¿cuál es el fallo? $cogechiste = mysql_query("SELECT * FROM chistes WHERE id = '$id'"); $row = mysql_fetch_assoc($cogechiste); $nombre = $row['nombre']; $chiste = $row['chiste']; $borrado = "borrados"; Código PHP: |
| ||||
Respuesta: Es correcto? Cita: la otra variante es:
Iniciado por nicolaspar ![]() No estoy de acuerdo con el "restar 0", no me parece lo mejor. Tampoco dejar una variable (como lo es $nombre) sin setear, ya que si no entra en la condición no existirá y además que es costoso el mysql_num_rows. Otra...usar un limit comparando un PK?...en si, lo haría así: Código PHP: Código PHP: ![]() |
| |||
![]() Al final he optado por esto, pero no funciona, me aparece el mensaje marcado en rojo, del final. <?php $nombre=$_POST["Nombre"]; $chiste=$_POST["Chiste"]; $category=$_POST["Categoría"]; if(strlen($nombre) == 0){ $errores++; } if(strlen($chiste) == 0){ $errores++; } if(strlen($category) == 0){ $errores++; } if($errores >0){ echo "<h1><font color='#0000CC'/>Lo siento, falta algún campo por rellenar</h1>"; exit(); } else { $connection=mysql_connect("mysql..com","","") or die("Error conectando a la base de datos"); $db=mysql_select_db("061294",$connection) or die ("Error seleccionando la base de datos"); $query="insert into chistes (nombre,chiste,categoria) values ('$nombre','$chiste','$category')"; mysql_query($query) or die ("Error al insertar los datos"); } ?> Última edición por yonolose; 24/05/2008 a las 08:41 |