Foros del Web » Programando para Internet » PHP »

Error en PHP

Estas en el tema de Error en PHP en el foro de PHP en Foros del Web. Hola amigos tengo un problemilla con php y no soy capaz de arreglarlo. Este es el codigo: <table border="0" cellpadding="0" cellspacing="0"> <tr> <td valign="top" > ...
  #1 (permalink)  
Antiguo 24/09/2008, 07:36
 
Fecha de Ingreso: julio-2004
Mensajes: 8
Antigüedad: 20 años, 4 meses
Puntos: 0
Error en PHP

Hola amigos tengo un problemilla con php y no soy capaz de arreglarlo.

Este es el codigo:

<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td valign="top" >
<iframe name="iframetag" marginwidth="0" marginheight="0" src="<?php echo $smiletagURL; ?>view.php" width="160" height="300" frameborder="0" class="smiletagFrame">
Your Browser must support IFRAME to view
this page correctly
</iframe>
</td>
</tr>

<tr>
<td>




<? if($my->username <> ""){
echo "<form name="smiletagform" method="post" action="<?php echo $smiletagURL; ?>post.php" target="iframetag">
Nick<br /><input type="hidden" name="name" value="<?php echo $my->username; ?>"/>
<br />
Mensaje<br /><textarea name="message_box" rows="2" cols="15"></textarea>
<br />
<input type="hidden" name="message" value="" />
<input type="submit" name="submit" value="Enviar" onclick="clearMessage()" />
<input type="reset" name="reset" value="Borrar" /><br />
</form>";
}
?>


</td>
</tr>
</table>

Lo que quiero hacer es que si la variable "$my->username" no esta vacia que me muestre el nombre del usuario y si la variable esta vacia que no me muestre el formulario.

Me sale este error:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home2/public_html/modules/mod_smiletag_shoutbox.php on line 74

Espero que me entendais

Un saludo
  #2 (permalink)  
Antiguo 24/09/2008, 07:40
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años, 6 meses
Puntos: 6
Respuesta: Error en PHP

Hola blanchboy,

Para ver si una variable no esta definida o bien esta vacia, puedes usar empty() o isset(), puedes checar este post:

http://www.forosdelweb.com/f18/compr...-vacia-137406/

saludos!!!
__________________
"Eres grande por que caminas entre gigantes"
  #3 (permalink)  
Antiguo 24/09/2008, 07:45
 
Fecha de Ingreso: julio-2004
Mensajes: 8
Antigüedad: 20 años, 4 meses
Puntos: 0
Respuesta: Error en PHP

Gracias ferbux pero me sigue dando el mismo error:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home2/public_html/modules/mod_smiletag_shoutbox.php on line 74

Acabo de arreglar el error de si esta vacio

<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td valign="top" >
<iframe name="iframetag" marginwidth="0" marginheight="0" src="<?php echo $smiletagURL; ?>view.php" width="160" height="300" frameborder="0" class="smiletagFrame">
Your Browser must support IFRAME to view
this page correctly
</iframe>
</td>
</tr>

<tr>
<td>


if (isset($var)) {

<? if(isset($my->username)){
echo "<form name="smiletagform" method="post" action="<?php echo $smiletagURL; ?>post.php" target="iframetag">
Nick<br /><input type="hidden" name="name" value="<?php echo $my->username; ?>"/>
<br />
Mensaje<br /><textarea name="message_box" rows="2" cols="15"></textarea>
<br />
<input type="hidden" name="message" value="" />
<input type="submit" name="submit" value="Enviar" onclick="clearMessage()" />
<input type="reset" name="reset" value="Borrar" /><br />
</form>";
}
?>
  #4 (permalink)  
Antiguo 24/09/2008, 07:46
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años, 6 meses
Puntos: 6
Respuesta: Error en PHP

Sobre el error que te marca es por que usas " comillas dentro del echo, solo cambialas por \" \", y no pongas un scdript php dentrp de otro script php, por que esta redefiniendo algo que ya tienes definido.
__________________
"Eres grande por que caminas entre gigantes"
  #5 (permalink)  
Antiguo 24/09/2008, 07:49
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años, 6 meses
Puntos: 6
Respuesta: Error en PHP

Pon tu codigo php de esta forma:

Código:
 
<?
if( ){
echo "<form name=\"smiletagform\" method=\"post\" action=\"post.php?variableURL=$smiletagURL\" target=\"iframetag\">
Nick<br /><input type=\"hidden\" name=\"name\" value=\"$my->username;\" >
<br /> 
Mensaje<br /><textarea name=\"message_box\" rows=\"2\" cols=\"15\"></textarea>
<br />
<input type=\"hidden\" name=\"message\" value=\" \" >
<input type=\"submit\" name=\"submit\" value=\"Enviar\" onclick=\"clearMessage()\" >
<input type=\"reset\" name=\"reset\" value=\"Borrar\" ><br />
</form>";
}

?>
__________________
"Eres grande por que caminas entre gigantes"

Última edición por ferbux; 24/09/2008 a las 07:55
  #6 (permalink)  
Antiguo 24/09/2008, 07:51
 
Fecha de Ingreso: julio-2004
Mensajes: 8
Antigüedad: 20 años, 4 meses
Puntos: 0
Respuesta: Error en PHP

Entonces seria asi:

<? if(isset($my->username)){
echo \"<form name="smiletagform" method="post" action="<?php echo $smiletagURL; ?>post.php" target="iframetag">
Nick<br /><input type="hidden" name="name" value="$my->username;"/>
<br />
Mensaje<br /><textarea name="message_box" rows="2" cols="15"></textarea>
<br />
<input type="hidden" name="message" value="" />
<input type="submit" name="submit" value="Enviar" onclick="clearMessage()" />
<input type="reset" name="reset" value="Borrar" /><br />
</form>\";
}
?>

Con este codigo me da 2 errores:

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home2/public_html/modules/mod_smiletag_shoutbox.php on line 74

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home2/public_html/modules/mod_smiletag_shoutbox.php on line 74

Perdona es que no tengo mucha idea de php
  #7 (permalink)  
Antiguo 24/09/2008, 07:53
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años, 6 meses
Puntos: 6
Respuesta: Error en PHP

copia el codigo php tal cual te lo puse en el post anterior, pruebalo y posteas cque te muestra.
__________________
"Eres grande por que caminas entre gigantes"
  #8 (permalink)  
Antiguo 24/09/2008, 07:54
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 9 meses
Puntos: 81
Respuesta: Error en PHP

Prueba con esto:
Código PHP:
<table border="0" cellpadding="0" cellspacing="0">
<tr>
    <td valign="top" >
        <iframe name="iframetag" marginwidth="0" marginheight="0" src="<?php echo $smiletagURL?>view.php" width="160" height="300" frameborder="0" class="smiletagFrame">
            Your Browser must support IFRAME to view
            this page correctly
        </iframe>
    </td>
</tr>
<tr>
    <td>
<? 
if($my->username <> ""){
    echo 
'
        <form name="smiletagform" method="post" action="'
.$smiletagURL.'post.php" target="iframetag">
            Nick<br /><input type="hidden" name="name" value="<?php echo $my->username; ?>"/>
            <br />
            Mensaje<br /><textarea name="message_box" rows="2" cols="15"></textarea>
            <br />
            <input type="hidden" name="message" value="" />
            <input type="submit" name="submit" value="Enviar" onclick="clearMessage()" />
            <input type="reset" name="reset" value="Borrar" /><br />
        </form>'
;
}
?>
    </td>
</tr>
</table>
Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #9 (permalink)  
Antiguo 24/09/2008, 08:03
 
Fecha de Ingreso: julio-2004
Mensajes: 8
Antigüedad: 20 años, 4 meses
Puntos: 0
Respuesta: Error en PHP

Gracias por todo, ya funcina de maravilla.

La solucion a sido la de Ferbux pero gracias por responder Marvin
  #10 (permalink)  
Antiguo 24/09/2008, 08:10
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años, 6 meses
Puntos: 6
Respuesta: Error en PHP

Que bien que te funcionaron nuestras sugerencias , me alegro por tí =).

Saludos!!!
__________________
"Eres grande por que caminas entre gigantes"
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 13:00.