Foros del Web » Programando para Internet » PHP »

Mensaje de error

Estas en el tema de Mensaje de error en el foro de PHP en Foros del Web. Hola, necesito una mano (o dos) ¿encontráis algo raro en este código? $link = connect(HOST, USER); switch($_POST['action']){ case "update": $res = getContent($link, 20); while($row = ...
  #1 (permalink)  
Antiguo 24/06/2009, 09:00
 
Fecha de Ingreso: junio-2009
Mensajes: 2
Antigüedad: 15 años, 4 meses
Puntos: 0
Mensaje de error

Hola, necesito una mano (o dos)
¿encontráis algo raro en este código?

$link = connect(HOST, USER);
switch($_POST['action']){
case "update":
$res = getContent($link, 20);
while($row = mysql_fetch_array($res)){
$result .= "<li><strong>".$row['user']."</strong><img src=\"css/images/bullet.gif\" alt=\"-\" />".$row['message']." <span class=\"date\">".$row['date']."</span></li>"; }
echo $result;
break;
case "insert":
echo insertMessage($_POST['nick'], $_POST['message']);
break;
}
Concretamente el error que me da es: "Notice: Undefined variable: result in ..." en la línea de la variable $result.
Gracias
  #2 (permalink)  
Antiguo 24/06/2009, 09:06
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 3 meses
Puntos: 139
Respuesta: Mensaje de error

Claramente esta variable esta indefinidad
$result

Código PHP:

if(!isset($result)){
$result " valor ";

Ademas tienes que mostrar mas codigo en caso de que necesites mas ayuda
  #3 (permalink)  
Antiguo 24/06/2009, 09:07
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Mensaje de error

exacto, no puedes emplear una variable sin definir...

Código PHP:
$foo '';

// ...

$foo .= 'bar'
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 24/06/2009, 09:16
Avatar de wpersei  
Fecha de Ingreso: septiembre-2006
Ubicación: Bogota
Mensajes: 189
Antigüedad: 18 años, 2 meses
Puntos: 1
Respuesta: Mensaje de error

pues de poderlo hacer lo puedes hacer inclusive si te das cuenta el código igual se ejecuta completamente, así que digamos que en un servidor de producción no te pondría ningún problema ya que en su mayoría vienen configurados para que no muestren errores, pero es bueno siempre inicializar las variables para que no generen este tipo de problemas y se sepa exactamente que variables se están utilizando en nuestros fragmentos de código.

saludos
__________________
www.ogallardo.com - Mi blog
  #5 (permalink)  
Antiguo 25/06/2009, 09:17
 
Fecha de Ingreso: junio-2009
Mensajes: 2
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Mensaje de error

Hola
Perdonar mi desconocimiento de PHP, pero no se dónde tengo k declararla. La cuestión es que el código (que me recupera datos de mysql) funciona, pero me da ese error que no es muy estético en una web.
El código completo es:

if(!$_POST['action']){
//We are redirecting people to our shoutbox page if they try to enter in our shoutbox.php
header ("Location: index.html");
}
else{
$link = connect(HOST, USER);
switch($_POST['action']){
case "update":
$res = getContent($link, 20);
while($row = mysql_fetch_array($res)){
$result .= "<li><strong>".$row['user']."</strong><img src=\"css/images/bullet.gif\" alt=\"-\" />".$row['message']." <span>".$row['date']."</span></li>";
}
echo $result;
break;
case "insert":
echo insertMessage($_POST['nick'], $_POST['message']);
break;
}
mysql_close($link);
}

Gracias por la ayuda anterior
  #6 (permalink)  
Antiguo 25/06/2009, 09:22
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 9 meses
Puntos: 29
Respuesta: Mensaje de error

Pues eso, inicialízala antes:

$result="";

if(!$_POST['action']){
//We are redirecting people to our shoutbox page if they try to enter in our shoutbox.php
header ("Location: index.html");
}
else{
$link = connect(HOST, USER);
switch($_POST['action']){
case "update":
$res = getContent($link, 20);
while($row = mysql_fetch_array($res)){
$result .= "<li><strong>".$row['user']."</strong><img src=\"css/images/bullet.gif\" alt=\"-\" />".$row['message']." <span>".$row['date']."</span></li>";
}
echo $result;
break;
case "insert":
echo insertMessage($_POST['nick'], $_POST['message']);
break;
}
mysql_close($link);
}
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #7 (permalink)  
Antiguo 25/06/2009, 09:24
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 3 meses
Puntos: 139
Respuesta: Mensaje de error

Código PHP:
<?php
if(!isset($result)){
$result " ";
}  

if(!
$_POST['action']){
//We are redirecting people to our shoutbox page if they try to enter in our shoutbox.php
header ("Location: index.html"); 
}
else{
$link connect(HOSTUSER);
switch(
$_POST['action']){
case 
"update":
$res getContent($link20);
while(
$row mysql_fetch_array($res)){
$result "<li><strong>".$row['user']."</strong><img src=\"css/images/bullet.gif\" alt=\"-\" />".$row['message']." <span>".$row['date']."</span></li>";
}
echo 
$result;
break;
case 
"insert":
echo 
insertMessage($_POST['nick'], $_POST['message']);
break;
}
mysql_close($link);
}


?>
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:19.