2016-11-23 5 views
0

Ich habe ein Formular, in dem Benutzer ihre Kontaktinformationen (Vorname, Nachname, E-Mail, Telefon, Website, Kommentar, Hosting) an eine Datenbank senden können. Das Formular funktionierte korrekt, bis ich versuchte, den 'Kommentar'-Namen im HTML in' Beschreibung 'zu ändern. Jetzt, wenn ich das Formular abschicke, lost der php die Antwort aus (was mich zu der Annahme bringt, dass er korrekt übermittelt), aber wenn ich mir den Tisch in phpMYAdmin ansehe, ist er leer.SQL Query funktionierte, wurde aber zufällig gestoppt

Die Datenbankstruktur ist astyle_lefteyebrow> Kontakt

Tabellenstruktur:

CustomerID (Primary) int(11)    
FirstName text    
LastName text    
Email  varchar (128)   
Phone  varchar (20) NULL   
Website  varchar (500) NULL   
Description varchar (2000)   
Hosting  tinyint (1) 

PHP File:

<?php 

$servername = "localhost"; 
$username = "astyle_quiggly"; 
$password = "**********"; 
$dbname = "astyle_lefteyebrow"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 

// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

// Check that posts have values 
echo $_POST['first_name']; 
echo $_POST['last_name']; 
echo $_POST['email']; 
echo $_POST['phone']; 
echo $_POST['website']; 
echo $_POST['comment']; 
echo $_POST['hosting']; 

// prepare and bind 
$stmt = $conn->prepare("INSERT INTO Contact (FirstName, LastName, Email, Phone, Website, Description, Hosting) VALUES (?, ?, ?, ?, ?, ?, ?)"); 
$stmt->bind_param("ssssssi", $firstname, $lastname, $email, $phone, $website, $description, $hosting); 


// set parameters and execute 
$firstname = $_POST['first_name']; 
$lastname = $_POST['last_name']; 
$email = $_POST['email']; 
$phone = $_POST['phone']; 
$website = $_POST['website']; 
$description = $_Post['comment']; 
if ($_POST['hosting'] == 'yes') { 
$hosting = 1;} 
else { 
$hosting = 0; 
} 
$stmt->execute(); 


$stmt->close(); 
$conn->close(); 
?> 

Ich bin nicht sicher, warum es arbeiten würde und dann alle plötzlich stopp, es sei denn, es hat etwas mit einem Kodierungsfehler zu tun. Irgendwelche Ideen?

+0

Warum nehmen Sie an, dass Ihre Abfrage erfolgreich ausgeführt wird ('$ stmt-> execute();')? Es gibt einen Boolean aus einem Grund zurück. – Xorifelse

Antwort

1

es sein sollte:

$description = $_POST['comment']; 

Und nicht:

$description = $_Post['comment']; 

Funktionen sind Groß- und Kleinschreibung, aber Variablen sind es nicht.

+0

Danke, das habe ich nicht mal gesehen! – strasbal