Ver Mensaje Individual
  #5 (permalink)  
Antiguo 31/12/2007, 12:24
cucufate
 
Fecha de Ingreso: diciembre-2007
Mensajes: 10
Antigüedad: 16 años, 4 meses
Puntos: 0
Información Re: Problemas con busca.php

Ufff, yo es que soy algo novato también, pero aún y así me voy a permitirme darte unos pequeños consejitos

1. Cuando pases muchas variables de un formulario (en la página modifica.php, por ejemplo) usa la siguiente rutina:

Código PHP:
foreach($_POST as $nombre_campo => $valor)
  {
  
$asignacion "\$" $nombre_campo "='" $valor "';";
  eval(
$asignacion);
  
// si quieres ver qué variables están pasando y qué valor tienen
  
echo $asignacion."<br>";
  } 
Así te ahorrarás tanto $_POST['variable'] que te da tantos problemas de ecomillados (y a mí particularmente me es más cómodo trabajar con $variable que con $_POST['variable']

2. Cuando un query te dé problemas (o aunque no te los dé), hazle un echo $sql; para ver si lo que te está buscando es lo que realmente quieres que te busque

3. Añade en busca.php un input tipo hidden que contenga lo que después le dirás en el WHERE. Me explico:

Código PHP:
<form name="form1" method="post" action="modifica.php">
<?php
while($row mysql_fetch_array($result))
{
printf("<tr><td><INPUT TYPE='text' NAME='nposte' SIZE='3' MAXLENGTH='30' value='%
s'></td><td>&nbsp;<INPUT TYPE='text' NAME='pk' SIZE='3' MAXLENGTH='30' value='%
s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text' NAME='intentos' SIZE='20' MAXLENGTH='3' value='%
s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text' NAME='carcaza' SIZE='3' MAXLENGTH='30' value='%
s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text' NAME='logfront' SIZE='3' MAXLENGTH='30' value='%
s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text' NAME='lognort' SIZE='3' MAXLENGTH='30' value='%
s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text' NAME='logsur' SIZE='3' MAXLENGTH='30' value='%
s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text' NAME='panel' SIZE='3' MAXLENGTH='30' value='%
s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text' NAME='antena' SIZE='3' MAXLENGTH='30' value='%
s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text' NAME='fecha' SIZE='3' MAXLENGTH='30' value='%
s'>&nbsp;</td><td>&nbsp;<INPUT TYPE='text' NAME='observacion' SIZE='3' MAXLENGTH='30' value='%
s'>&nbsp;</td></tr>"
$row["nposte"],$row["pk"],$row["intentos"],$row["carcaza"],$row["logfront"],
$row["lognort"],$row["logsur"],$row["panel"],$row["antena"],$row["fecha"],$row["observacion"]);

// añadir un input tipo hidden
<input type="hidden" name="old_npsote" value="<?echo $row['npsote'];?>">

}
mysql_free_result($result);
?>
</form>
De esta manera en modifica.php tendrías que cambiar el query por:

Código PHP:
<?
$Sql
="UPDATE revision SET nposte='".$_POST["nposte"]."', pk='".$_POST["pk"]."', 
intentos='"
.$_POST["intentos"]."', carcaza='".$_POST["carcaza"]."', 
logfront='"
.$_POST["logfront"]."', lognort='".$_POST["lognort"]."', 
logsur='"
.$_POST["logsur"]."', panel='".$_POST["panel"]."', antena='".$_POST
["antena"]."', fecha='".$_POST["fecha"]."', observacion='".$_POST
["observacion"]."' 
/* aqui viene el cambio  */
WHERE nposte='$old_npsote'"
;
?>
4. (Esta ya de propina ) Igual el header te da problemas, así que avanzándome a tu siguiente pregunta te recomiendo que pongas la URL entera:

Código PHP:
header("Location: http://www.midominio.com/consulta.html");
// o si todavia no la has subido
header("Location: http://localhost/consulta.html"); 
Ya me dirás si te funciona... que yo me voy corriendo a la cena de fin de año!!!