Foros del Web » Programando para Internet » PHP »

Problema en syntax error, unexpected 'echo'

Estas en el tema de Problema en syntax error, unexpected 'echo' en el foro de PHP en Foros del Web. Saludos no tengo mucho tiempo con esto del PHP estoy haciendo un registro para clientes para cargar toda su informacion a una DB estoy trabajando ...
  #1 (permalink)  
Antiguo 18/05/2016, 08:13
 
Fecha de Ingreso: mayo-2016
Ubicación: Venezuela
Mensajes: 5
Antigüedad: 7 años, 11 meses
Puntos: 0
Pregunta Problema en syntax error, unexpected 'echo'

Saludos no tengo mucho tiempo con esto del PHP estoy haciendo un registro para clientes para cargar toda su informacion a una DB estoy trabajando con PHP y MySQL siguiendo unas clases de internet he llegado a un punto donde cuando intento ACTUALIZAR la informacion en un REGISTRO me salta un error:

Cita:
Parse error: syntax error, unexpected 'echo' (T_ECHO) in C:\xampp\htdocs\Vigitroni_DB\actualizar.php on line 62
El codigel so es iguiente:

Código PHP:
<?php
    
if(isset($_POST['actufinal'])){
        
$co=$_POST['CODIGO'];
        
$c=$_POST['COMERCIO'];
        
$d=$_POST['DIRECCION'];
        
$t=$_POST['TELEFONO'];
        
$n=$_POST['NOMBRE'];
        
$a=$_POST['ALARMA'];
        
$m=$_POST['MASTER'];
        
$i=$_POST['INSTALADR'];
        
mysql_query("update datos set CODIGO='$co', COMERCIO='$c', DIRECCION='d', TELEFONO='$t', NOMBRE='$n', ALARMA='$a', MASTER='$m', INSTALADOR='i' where CODIGO='$CODIGO'")or die(mysql_error() echo "<script>alert('date actu'); location='Actualiar.php' )</script>";

    }
?>
Una imagen de Sublime Text que es el editor con el que trabajo


se que tengo un error en el codigo cuando hago la alerta pero no logro reconocerlo si me podrian ayudar sin criticar por favor solo gente que quiera colaborar de verdad gracias...
  #2 (permalink)  
Antiguo 18/05/2016, 08:15
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema en syntax error, unexpected 'echo'

Tu sintaxis está toda mal, necesitas estructurar bien tu código, escribe bien y con orden tu código, poco a poco, no desesperes.

Cita:
si me podrian ayudar sin criticar por favor solo gente que quiera colaborar de verdad gracias...
Por favor, no abuses del formato, es de mal gusto poner todo en letras grandes, lee las normas del foro.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 18/05/2016, 08:18
 
Fecha de Ingreso: mayo-2016
Ubicación: Venezuela
Mensajes: 5
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Problema en syntax error, unexpected 'echo'

Cita:
Iniciado por pateketrueke Ver Mensaje
Tu sintaxis está toda mal, necesitas estructurar bien tu código, escribe bien y con orden tu código, poco a poco, no desesperes.



Por favor, no abuses del formato, es de mal gusto poner todo en letras grandes, lee las normas del foro.
Gracias soy Nuevo y de verdad no lei las normas ya edito el articulo

hice lo que me indicaste pero ahora me dice que el error esta en

Código:
Parse error: syntax error, unexpected ';' in C:\xampp\htdocs\Vigitroni_DB\actualizar.php on line 62
Gracias por responder tan rapido
  #4 (permalink)  
Antiguo 18/05/2016, 08:20
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema en syntax error, unexpected 'echo'

Edité mi mensaje después de leer tu código 3 veces más, no estás cerrando bien los paréntesis ni separando lo que vas a imprimir: lo mejor es que borres esa linea y la escribas de nuevo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 18/05/2016, 08:21
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Problema en syntax error, unexpected 'echo'

obviamente te falta algun que otro punto y coma y cerrar los parentesis.

creo que puedes intentarlo.

si ves que no, postea nuevamente el codigo y te indicamos.
__________________
Unset($vida['malRollo']);
  #6 (permalink)  
Antiguo 18/05/2016, 08:26
 
Fecha de Ingreso: mayo-2016
Ubicación: Venezuela
Mensajes: 5
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Problema en syntax error, unexpected 'echo'

Estoy reescribiendo ese pedazo y viendo detenidamente donde me equivoque les informo Gracias
NOTA: no se como entrar en el editor de este tema que postee para disminuir las letras xD
  #7 (permalink)  
Antiguo 18/05/2016, 12:10
 
Fecha de Ingreso: mayo-2016
Ubicación: Venezuela
Mensajes: 5
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Problema en syntax error, unexpected 'echo'

He reescrito el codigo

vi unos errores que tenia pero ahora algo que no termino de comprender

Cita:
<?php
include("conexion.php");
$con=mysql_query("select * from datos");
$reg=mysql_fetch_array($con);
?>

<form action="" method="post">
<select name="datos">
<?php
do{
$codigo=$reg['CODIGO'];
$comercio=$reg['COMERCIO'];
?>
<option value="<?php echo $codigo; ?>"><?php echo $comercio; ?></option>
<?php
}while($reg=mysql_fetch_array($con));
?>
</select>
<input type="submit" name="actu" value="Actualizar" />
</form>
<?php
if(isset($_POST['actu'])){
$datos=$_POST['datos'];
$con1=mysql_query("select *from datos where CODIGO='$datos' ")or die(mysql_error());
$reg1=mysql_fetch_array($con1);
$co=$reg1['CODIGO'];
$c=$reg1['COMERCIO'];
$d=$reg1['DIRECCION'];
$t=$reg1['TELEFONO'];
$n=$reg1['NOMBRE'];
$a=$reg1['ALARMA'];
$m=$reg1['MASTER'];
$i=$reg1['INSTALADOR'];
?>
<form method="post">
CODIGO:<input name="co" value="<?php echo $co; ?>" /><br />
COMERCIO:<input name="c" value="<?php echo $c; ?>" /><br />
DIRECCION:<input name="d" value="<?php echo $d; ?>" /><br />
TELEFONO:<input name="t" value="<?php echo $t; ?>" /><br />
NOMBRE:<input name="n" value="<?php echo $n; ?>" /><br />
ALARMA:<input name="a" value="<?php echo $a; ?>" /><br />
MASTER:<input name="m" value="<?php echo $m; ?>" /><br />
INSTALADOR:<input name="i" value="<?php echo $i; ?>" /><br />
<input type="hidden" name="CODIGO" value="<?php echo $datos ?>" />
<input value="Actualizar" type="submit" name="actufinal" />
</form>

<?php
if(isset ($_POST['actufinal'])){
$co=$_POST['co'];
$c=$_POST['c'];
$d=$_POST['d'];
$t=$_POST['t'];
$n=$_POST['n'];
$a=$_POST['a'];
$m=$_POST['m'];
$i=$_POST['i'];
mysql_query("update datos set co='$co', c='$c', d='$d', t='$t', n='$n', a='$a', m='$m', i='$i'")or die(mysql_error());
echo "<script>alert('date(actu)')location ='actualizar.php'</script>";
}
?>
me dice que el error esta en la ultima linea donde cierro el php -.-

hice una verificacion con una pagina que me revisa el codigo y encuentra el error no se si la puedo mencionar aca pero dice que el error esta en la linea 61 que para mi es el cierre del PHP :s
  #8 (permalink)  
Antiguo 19/05/2016, 07:24
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Problema en syntax error, unexpected 'echo'

Acostumbrate a utilizar siempre el ; al final de la instrucción. He visto alguno por ahí que te falta, aún que no creo que sea la causa del error.

Es molesto leer código no resaltado, utilizar la función de HIGHLIGHT del foro nos ayuda a leer fácilmente el código y detectar pequeños errores de sintaxis. Busca en HIGHLIGHT el lenguaje y postea el cogido.

No se que programa te indica que el error esta en esa línea, para mi el intérprete de php suele ser el más fiable para ver los error. No siempre va ha estar en la misma línea indicada pero seguramente este en las anteriores o cerca, puede que te marque el error en la línea cinco pero la instrucción que causa el error esta en la 1 pero por el motivo que sea php sigue ejecutando el código hasta encontrar el cierre de la instrucción y por eso marca el error más adelante.

Si estas empezando con php, también te recomiendo que utilices mysqli en lugar de mysql, aún debes acometer más cambios no sólo añadir la i.
__________________
Unset($vida['malRollo']);

Última edición por xerifandtomas; 19/05/2016 a las 07:32
  #9 (permalink)  
Antiguo 19/05/2016, 08:26
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problema en syntax error, unexpected 'echo'

por empezar: El "or die()" genera una salida por pantalla, no formateada, por lo que NO REQUIERE poner el echo.
Si quieres hacer una salida en JavaScritp, entonces NO puedes usar el or die(), asi de simple:
Código PHP:
Ver original
  1. $result =  mysql_query("update datos set co='$co', c='$c', d='$d', t='$t', n='$n', a='$a', m='$m', i='$i'");
  2. if(!$result)
  3. {
  4. echo "<script>alert('date(actu)')location ='actualizar.php'</script>";}

Algnos consejos, para tu mejor práctica:
1) Usa nombres de variables que sean descriptivos. Poner "c='$c', d='$d', t='$t', n='$n', a='$a', m='$m', i='$i'" e obliga a leer todo el codigo anterior para poder saber de qué d... se tratan esos datos. Un código debe ser CLARO y comprensible. El día de mañana ni tu mismo te acordarás de que estabas haciendo.
2) La libreria de acceso a datos MYSQL es obsoleta y ya no tiene soporte en PHP 7. Te conviene directamente NO usarla, como te dijeron.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #10 (permalink)  
Antiguo 20/05/2016, 03:19
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Problema en syntax error, unexpected 'echo'

Cita:
Iniciado por ze3r0o Ver Mensaje
me dice que el error esta en la ultima linea donde cierro el php -.-

Si... tienes que cerras las llaves {}... sino, da error al final ;)
__________________
>> Eleazan's Source
>> @Eleazan

Etiquetas: echo, syntax
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 20:54.