2016-03-21 7 views
-1

Ich versuche, Daten in eine Datenbank einzugeben. Ich habe Echo verwendet, um zu sehen, ob die Datenbank gelesen wird, es ist und das Datenbankecho ist wie eingegeben, es wird einfach nicht in die Datenbank eingefügt. Dies ist der gleiche Code, den ich für die Registrierungsseite verwendet habe, abgesehen von einer neuen Änderung, und meine Reg Seite funktioniert perfekt, so dass ich ein wenig verwirrt bin, warum es nicht funktioniert.PHP - In Datenbank-Problem einfügen

HTML

  <!--     <div id="first">--> 
      <input type="text" id="fname" name="fname" value="" required> 
      <input type="text" id="lname" name="lname" value="" required> 
      <input type="text" id="email" name="email" value="" required> 
      <input type="number" id="phone" name="phone" value="" required> 
      <input type="submit" name="Update" value="Update"> 
      <br> 

PHP

<?php 
    session_start(); 
    require('../mysql.inc.php'); 
    ?> 

    <?php 
     if (isset($_POST['Update'])) { 
      echo $c_fname = $_POST['fname']; 
      echo $c_lname = $_POST['lname']; 
      echo $c_email = $_POST['email']; 
      echo $c_phone = $_POST['phone']; 



      $insert_det = "INSERT INTO Cus_acc_details(CUS_Fname,CUS_Lname,CUS_Phone,Cus_Email) VALUES (?,?,?,?)"; 
      $stmt = mysqli_prepare($dbc, $insert_det); 

      mysqli_stmt_bind_param($stmt, 'sssi', $c_fname, $c_lname, $c_email, $c_phone); 

      if ($insert_det) { 
       echo " Saved"; 
      } 
     } else { 
      echo "<b> Error </b>"; 
     } 
     ?> 

Irgendwelche Vorschläge

+0

Sie sollten wirklich prüfen, ob '$ _POST ['####']' tatsächlich gesetzt ist, bevor Sie mit dem Einfügen in die Datenbank fortfahren. – Xorifelse

Antwort

5

Der Aufruf von mysqli_stmt_execute() fehlt, so wird nie Ihre Anweisung ausgeführt werden.

+1

Verdammt diese ez Punkte – Jonathan

1

Versuchen Sie Insert-Abfrage

$insert_det = "INSERT INTO Cus_acc_details(CUS_Fname,CUS_Lname,Cus_Email,CUS_Phone) VALUES (?,?,?,?)"; 
$stmt = mysqli_prepare($dbc, $insert_det); 

ändert, wie Sie sie oben mischen, wenn sie auf den Platzhalter deklarieren und als ganze Zahl Gießen E-Mail, sondern versuchen, die Telefonnummer als E-Mail einzufügen, und vice versa

+0

Vielen Dank, dass Sie nicht bemerkt haben – jerneva