2017-02-10 4 views
1

Ich versuche, ein Registrierungsformular zu entwickeln.Registrierungsformular: Kein Fehler, aber keine Daten auf mysql DATENBANK

Wenn ich alle Felder ausfüllen und senden Sie das Formular, keine Fehler der Server ist verbunden, aber keine Daten auf MySQL-Datenbanktabelle. Bellow L hat die Action-Datei des Formulars angehängt. Was vermisse ich? und wie kann ich es lösen?

<?php 
$mysqli_servername = "localhost"; 
$mysqli_username = "admin_try"; 
$mysqli_password = "rFT5hePS5u"; 
$mysqli_database = "indepe"; 

// Create connection 
$conn = mysqli_connect($mysqli_servername,$mysqli_username,$mysqli_password,$mysqli_database); 

// Check connection 
if (!$conn) { 
    die("Connection failed: " . mysqli_connect_error()); 
} 
echo "<a href='index.html'>Back to main page</a>"; 

if (isset($_GET["submitreg"])) 
{ 

     $id= mysqli_real_escape_string($conn, $_POST['id']); 
     $country = mysqli_real_escape_string($conn, $_POST['country']); 
     $email = mysqli_real_escape_string($conn,$_POST['email']); 
     $password = mysqli_real_escape_string($conn,$_POST['password']); 
     $re_password = mysqli_real_escape_string($conn,$_POST['re_password']); 
     $compnay = mysqli_real_escape_string($conn,$_POST['compnay']); 
     $contact = mysqli_real_escape_string($conn,$_POST['contact']); 
     $tell = mysqli_real_escape_string($conn,$_POST['tell']); 


    $sql = "INSERT INTO registration(id,country,email,password,re_password,compnay,contact,tell); 
     VALUES('id','$country','$email','$password','$re_password','$compnay','$contact'),'$tell'"; 

    if ($conn->query($sql) === TRUE) { 

    echo "record created successfully"; 

} else { 

    echo "Error: " . $sql . "<br>" . $conn->error; 

} 


if (mysqli_query($conn, $sql)) { 
    echo " record created successfully"; 
} else { 
    echo "Error: " . $sql . "<br>" . mysqli_error($conn); 
} 
} 



//$conn->close(); 
mysqli_close($conn); 

?> 
+1

was ist Ihre Form Methode in html? – Naincy

+2

Nach '

+0

, wenn Sie Ihre Daten POST '$ _GET [" submitreg "] sollte lesen; '$ _POST [" submitreg "]' –

Antwort

2

Es gibt nur wenige Fehler in der INSERT-Abfrage

  • Entfernen Sie die semicolen nach tell in Ihrer Einsatz Abfrage
  • Sie gab id in Werte statt $id
  • $tell außerhalb der Halterung ist

    $sql = "INSERT INTO registration(id,country,email,password,re_password,compnay,contact,tell) VALUES('$id','$country','$email','$password','$re_password','$compnay','$contact','$tell'");

Ich bin nicht sicher, ob das Ihr Problem ist oder es aufgetreten Ihr Kopieren Ihrer code..because wurde kein Fehler

-1

ich, was Sie brauchen gezeigt Privilegien für bestimmte Benutzer hinzufügen Datensätze einzufügen. wie Sie $mysqli_username = "admin_try"; erklärt haben. gehen Sie jetzt zu localhost/phpmyadmin und fügen Sie dann Berechtigungen zu bestimmtem Benutzer hinzu !!

+0

abstimmen? aber das ist eine nützliche Antwort !! Sie müssen zumindest rechtfertigen !! – shyamm

-1

Sie verwenden die $ _GET-Prüfung und das Senden des Formulars, das falsch ist. Es wird immer empfohlen, eine POST-Anfrage für die Einreichung von Formularen zu machen.

if (isset($_GET["submitreg"])) 

Aber später in Ihrem Code, um die Daten zu erhalten, die Sie $ _POST verwenden.

$id= mysqli_real_escape_string($conn, $_POST['id']); 

Bitte überprüfen Sie Ihre Formularmethode in html es POST machen und

if (isset($_GET["submitreg"])) 

zu

if (isset($_POST["submitreg"])) 
+0

warum down vote? Bitte klären Sie auch – Naincy

0

ändern Ich denke, Sie vor VALUES in INSERT-Abfrage entfernen Semikolon verwechseln Schlüsselwort und wenn ID Spalte Autoinkrement dann nein hinzufügen müssen es in INSERT-Abfrage sonst müssen Sie es richtig addieren und , ‚$ sagen‘ außerhalb der Halterung ist bitte machen es richtig

$sql = "INSERT INTO registration(country,email,password,re_password,compnay,contact,tell) VALUES ('$country','$email','$password','$re_password','$compnay','$contact','$tell')"; 
Verwandte Themen