Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/03/2012, 00:56
szalenstwo
 
Fecha de Ingreso: octubre-2011
Mensajes: 25
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: formulario de contacto

Cita:
Iniciado por szalenstwo Ver Mensaje
Hola buenas!!

Alguien de por aqui me puede decir que está mal en mi codigo ... el problema que pasa es que cuando relleno todos los campos del formulario, los datos no se me inserta en la base de datos y siempre me envia a la pagina de failed.php aunque los campos del formulario esten lleno.

Código PHP:
Ver original
  1. <?php
  2.  
  3. if($_SERVER['REQUEST_METHOD'] == 'POST'){
  4.  
  5.     //First check that no field is empty and that all fields exist.
  6.  if(isset($_POST['name']) && !empty($_POST['name'])){
  7.  $nombre = mysql_real_escape_string($_POST['name']);
  8.  
  9.  }
  10.  
  11.  if(isset($_POST['email']) && !empty($_POST['email'])){
  12.  $email = mysql_real_escape_string($_POST['email']);
  13.  
  14.  }
  15.  
  16.  if(isset($_POST['comentario']) && !empty($_POST['comentario'])){
  17.      $enviar = mysql_real_escape_string($_POST['comentario']);
  18.  
  19.  }
  20.  
  21.  if(isset($_POST['submit']) && !empty($_POST['submit'])){
  22.      $enviar = mysql_real_escape_string($_POST['submit']);
  23. }
  24.  
  25.  // Complete error variable if necessary.
  26.  
  27.    /*
  28.    {
  29.    if ( empty($name) ) $error['name']     ='It is obligatory to enter a name';
  30.    if ( empty($email) )    $error['email']      ='It is obligatory to enter a email';
  31.    if ( empty($comentario) ) $error['comentario'] ='It is obligatory to enter a           comment';
  32. }
  33.    */
  34.  
  35.  // If you entered is that everything is done correctly
  36.  
  37.  $link = mysql_connect("localhost", "root", "");
  38.  mysql_select_db("a1118766_contact",$link);
  39.  if($link) {
  40.       //echo "Connection completed successfully.";
  41.    
  42.     header('Location:error.php');
  43.   }
  44.  
  45.  // insert data in database.
  46.  $sql = "INSERT INTO sumit(name, email, comentario)
  47. VALUES('".$name."','".$email."','".$comentario."',)";
  48.  
  49.      
  50. if($name && $email && $comentario) {
  51.    
  52.     $resultado = mysql_query($sql);
  53.        
  54.         if($resultado){
  55.        
  56.         header( 'Location:informe.php?registro=true');
  57.      // Send an email to this email.
  58.         $mail='[email protected]';
  59.          
  60.         $name = $_POST['name'];
  61.         $email = $_POST['email'];
  62.         $comentario= $_POST['comentario'];
  63.         # These data are to be seen in the mail
  64.         $commentario = "
  65.         name: ".$name."
  66.         email: ".$email."
  67.         comentario: ".$comentario."";
  68.         # asunto del mensaje
  69.         if (mail($mail,"Jose gomez",$comentario, "From: ".$nombre." <".$email.">"))
  70.         $header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
  71.         $header .= "Mime-Version: 1.0 \r\n";
  72.         $header .= 'Content-type: text/plain; charset=utf-8' . "\r\n";
  73.         mail($to,$subject,$message,$headers);
  74.        
  75.         }
  76.  
  77. }else{
  78.  
  79.     header( 'Location:failed.php?registro=false');
  80.  
  81. }
  82. }
  83.  
  84.  ?>

y esté es el formulario.
Código HTML:
Ver original
  1.    <form action="contacto.php" method="post" id="form">
  2.        <div class="form-item">
  3.             <label for="name" class="label">Your name:</label>
  4.          <input type="text" maxlength="250"  class="required" id="name" name="name"/>
  5.     </div>
  6.     <div class="form-item">
  7.         <label for="email" class="label">Your email:</label>
  8.         <input type="text" maxlength="300" class="required" id="email" name="email"/>
  9.     </div>
  10.     <div class="form-item">
  11.          <label for="comentario" class="label">Your comment:</label>
  12.         <textarea name="comentario" rows="300" cols="" class="required" id="comentario"></textarea>
  13.     </div>
  14.     <div class="botonera">
  15.          <input type="submit" class="" value="Enviar" id="submit"/>
  16.          <input type="reset" class="" value="Cancelar" id="reset"/>
  17.     </div>
  18.    </form>

Muchas gracias y saludo a todos :)
la base de datos se llama prueba y aqui tiene otro nombre!! se me olvido cambiar el nombre en el mensaja.