ME podeis ayudar donde esta el error?
$query = mysql_query("INSERT INTO contactos (nombre,email,mensaje) values ('$_POST['nombre']}','{$_POST['email']}','{$_POST['mensaje']}')");
| |||
expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' ME podeis ayudar donde esta el error? $query = mysql_query("INSERT INTO contactos (nombre,email,mensaje) values ('$_POST['nombre']}','{$_POST['email']}','{$_POST['mensaje']}')"); |
| ||||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' Si sigue sin funcionarte prueba asi, ya que las comillas suelen dar problemas. Cita: lo que e echo es sacar los valores del interior de las comillas. asi '".$variable."'$query = mysql_query("INSERT INTO contactos (nombre,email,mensaje) values ('".$_POST['nombre']."','".$_POST['email']."','".$_POST['mensaje']."')"); Un Saludo |
| |||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' Ya no me sale el error pero no inserta los datos Sabes como enviar el formulario por email con los mismos campos Última edición por granasturcom; 27/02/2010 a las 16:20 |
| ||||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' para evitar el lío de las comillas sería mejor que usaras variables: Código PHP: ![]() |
| ||||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' A parte de todo lo que te dijeron, era muy sencillo ver el error. Te faltaba un corchete al principio de todo: $query = mysql_query("INSERT INTO contactos (nombre,email,mensaje) values ('{$_POST['nombre']}','{$_POST['email']}','{$_POST['mensaje']}')"); |
| ||||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' Si es una buena forma de evitar hacerte un lio, aki dejo dos funciones para limpiar variables seguro que a alguien les sirve Cita: Para limpiar una variable puedes usar:function limpiar($texto) { //limpia un texto de caracteres extraños $texto = htmlspecialchars($texto) ; $texto = trim($texto) ; $texto = stripslashes($texto); $texto = strip_tags($texto); return $texto ; } function limpiar_array($variable){ //Limpia los arrays de caracteres maliciosos $i = 0; foreach ($variable as $elem) { $variable[$i] = limpiar($variable[$i]); $i++; } return $variable; } $nombre = limpiar($_POST['nombre']); y si lo que quieres es limpiar un array completamente por ejemplo todos los datos que entran de un formulario mediante post o get puedes usar $_POST = limpiar_array($_POST); Lo unico tener en cuenta que si quieres guardar o enviar codigo javascript o html para que se ejecute, no debes de limpiarlas. Un Saludo |
| ||||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' Si claro tendrias que haser el query, tal y como lo has ehco hasta ahora, si optas por haserlo igual que hasta ahora pero limpiandolos te quedaria algo asi. Cita: Asi de simple.$_POST = limpiar_array($_POST); $query = mysql_query("INSERT INTO contactos (nombre,email,mensaje) values ('".$_POST['nombre']."','".$_POST['email']."','".$_POST['mensaje']."')"); Si prefieres almacenarlos en variables para evitar liarte con las comillas como dice jcxnet, te quedaria asi: Cita: Un Saludo $_POST = limpiar_array($_POST); $nombre = $_POST['nombre']; $email = $_POST['email']; $mensaje = $_POST['mensaje']; $query = mysql_query("INSERT INTO contactos (nombre,email,mensaje) values ('$nombre','$email','$mensaje')"); |
| ||||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' Pues si tienes por ejemplo $conexion=mysql_connect.... cambia el query y mándalo a $conexion:
Código PHP:
Ver original |
| |||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' $conn = mysql_connect(HOST, DBUSER, PASS) or die('No se ha podido conectar !<br />por favor contacte con su administrator.'); le doy los valores y luego : $db = mysql_select_db(DB) or die('No se ha podido conectar con la base de datos !<br />por favor contacte con su administrator.'); tengo esto y cuando tengo q abrir la bd llamo a la funcion cambie lo que me dijiste y sigue igual Última edición por granasturcom; 27/02/2010 a las 17:19 |
| ||||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' Fijate que al final del query, ha añadido Cita: tu deberias de poner ,$conn por que es la variable que te conecta con la base de datos, de todas formas, al final del query prueba a poner ,$conexion or die(mysql_error()); para ver donde si imprime algun error en pantalla. |
| |||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' Gracias esta todo bien era porque ponia esto y claro no entraba dentro if ( !empty($_POST['submit']) ) //si envia formulario creo que esto es si no envia |
| ||||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' el problema del principio fue que faltaba un { (un poco tarde jajajaj ![]() y en cuanto al mail, solo es cuestion de buscar en las faqs. enviar mail en formato html o si prefieres algo masl simple solo lee un poco a cerca de la funcion mail saludos.
__________________ El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa la tristeza no existe, solo es... la ausencia de la felicidad. |
| |||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' Tengo otro Problema , cada vez que pinchio en el link contactos me inserta todos los campos aunque yo no le de a enviar lo hace simplemente al acceder a contacto.php ¿que pasa? me los crea en blanco Última edición por granasturcom; 28/02/2010 a las 08:48 |
| ||||
Respuesta: expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' pues que el if que tienes como condicional para que los inserte tiene que estar mal, y al entrar entiende que enviastes el formulario, has comprobado que el form el boton enviar tiene name='submit' ? por que es el valor que veo que compruebas if(!empty($_POST['submit']){ } siginifica si submit no esta vacio, lo que quiere decir que se envio el formulario. Saludos. Última edición por Nazari; 28/02/2010 a las 12:09 |
Etiquetas: Ninguno |