Foros del Web » Programando para Internet » PHP »

problema al pasar variable

Estas en el tema de problema al pasar variable en el foro de PHP en Foros del Web. debo pasar una variable que es en realidad un dato alojado en mi BD mysql para que me abra segun sea para cada fila una ...
  #1 (permalink)  
Antiguo 14/08/2005, 19:18
 
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 461
Antigüedad: 22 años, 2 meses
Puntos: 1
problema al pasar variable

debo pasar una variable que es en realidad un dato alojado en mi BD mysql para que me abra segun sea para cada fila una pagina diferente el codigo de la pagina que consulta a la bd es esta:

consulta.php
<html>
<body>
<table border="1">
<tr>
<td>
Codigo
</td>
<td>
Nombre
</td>
<td>
Años
</td>
<td>
Ver
</td>
</tr>
<?php
$link=mysql_connect("localhost","usuario","passwor d");
mysql_select_db("datos");
$sql="select * from clientes";
$rs=mysql_query($sql,$link);
if ($rs)
{
while ($fila=mysql_fetch_assoc($rs))
{
?>
<tr>
<td>
<?php echo $fila['codigo'];?>
</td>
<td>
<?php echo $fila['nombre'];?>
</td>
<td>
<?php echo $fila['edad'];?>
</td>
<td>
// aqui envio la variable a la pagina ver.php
<a href="ver.php?cod=<?php echo $fila['codigo'];?>">
Datos del usuario
</a>
</td>
</tr>
<?php
}
}
?>
</table>
</body>
</html>



esta es la pagina que recoge la variable

ver.php

<?php
//recibo el codigo de usuario
$cod=$_GET['codigo'];
$link=mysql_connect("localhost","usuario","passwor d");
mysql_select_db("datos");
$sql="select * from usuarios where cod_usuario='$cod';";
$rs=mysql_query($sql,$link);
if ($rs)
{
while ($fila=mysql_fetch_assoc($rs))
{
?>
<tr>
<td>
<?php echo $fila['codigo'];?>
</td>
<td>
<?php echo $fila['nombre'];?>
</td>
<td>
<?php echo $fila['edad'];?> </td>
<td>
<?php
}
}
?>
osea puedo ver los registros insertados cuando le doy abrir a la pagina ver me sata el siguiente error:

Notice: Undefined index: codigo in e:\bd\ver.php on line 3

que es donde esta este codigo

$cod=$_GET['codigo'];


que es????

Última edición por marcinf2; 14/08/2005 a las 19:49
  #2 (permalink)  
Antiguo 14/08/2005, 20:19
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 4 meses
Puntos: 11
Un notice sólo nos avisa que estamos programando "mal", no es un error. En este caso no estamos verificando que la variable $_GET['codigo'] tenga un valor valido, como seria hacerlo asi:

if (isset($_GET['codigo'])) $cod=$_GET['codigo'];

Para evitar la aparicion de notices en php.ini, debemos colocar en la linea error_reporting, esto:

error_reporting = E_ALL & ~E_NOTICE

Última edición por claudiovega; 14/08/2005 a las 20:28
  #3 (permalink)  
Antiguo 15/08/2005, 08:42
 
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 461
Antigüedad: 22 años, 2 meses
Puntos: 1
quiero corregir algo en el archivo ver.php

en vez de

$cod=$_GET['codigo']; es $cod=$_GET['cod'];

he probado con echo $_GET['cod']; y en la pagina me muestra correctamente la variable


entonces dices que en vez de:

$cod=$_GET['cod'];

coloque:

if (isset($_GET['cod'])) $cod=$_GET['cod'];

y en php ini lo que me indicaste?

otra cosa despues que pase la variable debo abrir la bd de vuelta para que me coloque en la nueva pagina los datos que quiera?

Última edición por marcinf2; 15/08/2005 a las 10:03
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:18.