Error en insertar datos a sql server 2014

Tengo un código para insertar datos a través de un formulario a la base de datos SQL SERVER 2014 pero me da el siguiente error:

Array ( [0] => Array ( [0] => 42000 [SQLSTATE] => 42000 [1] => 102 [code] => 102 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Sintaxis incorrecta cerca de 'ł'. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Sintaxis incorrecta cerca de 'ł'. ) )

Y mi codigo PHP es el siguiente:

<div id="divpAlumnes">
<form name="Nuevo_Alumno" action="" method="post">
<fieldset>
<legend>Alumnos</legend>
<input required type="text" name="DNI" placeholder="DNI" title="Se necesita un DNI">
<input type="submit" value="Insertar">
<input type="text" name="Nombre" placeholder="Nombre">
<input type="text" name="Apellidos" placeholder="Apellidos">
<input type="text" name="Poblacion" placeholder="Poblacion">
<input type="Email" name="Email" title="Introduce un Email" placeholder="Email" required/>
</fieldset>
</form>
<br/>
<?php
if($_POST){//Si se ha presionado el boton enviar
// Aquí va el nombre de nuestro servidor
$servidor = 'DESKTOP-BK5G0II';
// Ponemos usuario y la contraseña
$usuario = 'wfreire';
$pass = 'wfreire';
$basededatos = 'Scorpius';

$connectionInfo = array('Database'=>$basededatos, 'UID'=>$usuario, 'PWD'=>$pass);
$conn = sqlsrv_connect($servidor, $connectionInfo);
//conexión al SQL

if(!$conn){
die("Error: No se pudo conectar");
}
$insert="INSERT INTO Alumnos(DNI, Nombre, Apellidos, Población, Email)VALUES(?, ?, ?, ?, ?)";
$params = array($_POST["DNI"], $_POST["Nombre"], $_POST["Apellidos"], $_POST["Poblacion"], $_POST["Email"]);
$resultado=sqlsrv_query($conn, $insert, $params);
//ejecutamos la insercción para ver si ha funcionado
if ($resultado){
echo ("<h2>Se han guardado correctamente</h2>");
}
else{
echo("<h2>Error: No se pudo guardar los datos por el siguiente error:</h2> ");
die( print_r(sqlsrv_errors(), true));
}
sqlsrv_close($conn);
}
?>
</div>

Respuesta

Revisando un poco tu código, me parece extraño que hayas metido un valor Población (con acento) en la tabla de sql. Confírmame si es así o ha sido el autocorrector, para ver si es eso lo que falla u otra cosa.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas