Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in ........

Iniciado por registrosmaxx, 13 Diciembre 2017, 13:45 PM

0 Miembros y 1 Visitante están viendo este tema.

registrosmaxx

Separado de
https://foro.elhacker.net/php/parse_error_syntax_error_unexpected_tstring_expecting_or_in-t288866.0.html;topicseen

Hola, yo también tengo un problema con el mismo error pero con otro código distinto en todos los foros que he estado hablan de comillas simples dentro de las dobles o viceversa pero ese no es mi caso y que en esa línea no hay nada escrito.
Yo lo que pretendo hacer es recoger los datos de un formulario sencillo, nombre,email y  curso e insertarlos en unla tabla se llama  alumnos en phpMysql.

resulta que habré hecho el ejercicio como unas 6 o 7 veces y dos de cada tres me da error y es que lo comparo con los que hecho que funcionan, y no encuentro la diferencia, y dos de cada tres veces me da error he copiado al frase del error del que funciona pero el error cuando sale ya no se va.

este es el error:

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\xampp\htdocs\ya\base1\alumnos\insertar_alumnos1.php on line 25

pero resulta que en la línea 25 no hay nada y en la línea 23 esta esta línea
echo "Los datos se han insertado";
y en la línea 26 el cierre de php


Código (php) [Seleccionar]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>

<?php

include("conexion.php");

$nombre=$_REQUEST['nombre'];
$mail=$_REQUEST['mail'];
$curso=$_REQUEST['curso'];

$con=mysql_connect($host,$user,$pw) or die("No se ha conectado".mysql_error());
mysql_select_db("base1",$con) or die("No se ha conectado".mysql_error());

mysql_query("INSERT INTO alumnos(nombre,mail,curso) VALUES('$nombre','$mail','$curso')",$con)or die("No se ha conectado".mysql_error());

mysql_close($con);
echo "Los datos se han insertado";


?>


</body>
</html>



código HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<h2>Registro de datos en una tabla</h2>

<form action="insertar_alumnos.php">
Ingrese su nombre: <br>
<input type="text" name="nombre"><br>
Ingrese su correo: <br>
<input type="text" name="mail"><br>

<select name="curso" id="curso">
<option value="1">PHP</option>
<option value="2">AJAX</option>
<option value="3">JSP</option>
</select>
<br>
<input type="submit" value="confirmar">;

</form>
</body>
</html>

este tipo de errores de no reconocer las variables me trae de cabeza,
a ver si alguien me puede decir porque me da ese error.

engel lex

borra los espacios adicionales, puede que tengas un caracter raro por ahí, porque el codigo a rpimera vista no parece tener errores

por cierto, no uses la extensión mysql_ esta está ya obsoleta y fue eliminada en las versiones más nuevas de php, usa MySQL::PDO o mysqli en su defecto
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

registrosmaxx

Hola, Gracias por la respuesta, se que tiene que ser algo, de espacios porque solo funciona cuando pego el código que tengo hecho porque el ejercicio la habré echo 6 o 7 veces y cuando da este problema  solo funciona o haciendolo otra vez de nuevo o copiando uno de los que funcionan pero sigo sin saber porque me da este error,
en cuanto a usar mysql es porque ya he probado varias veces con el mysqli y siempre me da error en la conexión a lo mejor es porque para que todo sea igual que el curso que estoy haciendo el php que tengo es una versión antigua que es la que usan en el los vidéo tutoriales es php 5.5 .
Gracias de todos modos engel.

engel lex

probablemente cuando pegas, pegas espacios que tienen una coficacion inapropiada (Ej es  ISO-8859 y tu texto está en UTF-8) entonces el interprete de php no logra comprender que hay...


que editor de php estás usando?
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

registrosmaxx

Estoy utilizando el Sublime Text 3 antes usaba el Notepad++ pero este me quita mucho más trabajo ya que su ayuda es mayor y mejor auto completado para mi, porque   muchas veces me equivoco en algunas palabras.