2017-08-24 14 views
0
<?php 
$q= $_REQUEST["q"]; 
$r = $_REQUEST["r"]; 
$s = $_SESSION['empid']; 
$max = 0; 
$dbhost = 'localhost:3306'; 
$dbuser = 'root'; 
$dbpass = ''; 
$dbname = 'employeesurvey'; 
$conn = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname); 
$sql1 = "SELECT QuestionID FROM question"; 
if(!mysqli_query($conn,$sql1)){ 
    echo 'error2 php'; 
} 
while($rw1 = mysqli_fetch_array($sql1)){ 
    $Q = $rw1['QuestionID'] ; 
    if ($max<$Q){ 
     $max = $Q; 
    } 
} 
$Q = $Q+1; 
$sql = "INSERT INTO question VALUES (".$Q.",'".$r."',".$s.",CURRENT_DATE(),".$q.",0)"; 
if(!mysqli_query($conn,$sql)){ 
    echo "Error"; 
} 

?>Ich bin nicht in der Lage in MySQL einfügen PHP

Der db, Tabellennamen sind alle richtig (keine Fehler angezeigt werden). Ich verwende xmlHttpRequest.open(), um die Werte zu dieser Seite zu übergeben die Aufruf-Anweisung lautet:

xmlhttp = new XMLHttpRequest(); 
xmlhttp.open("GET", "gethint1.php?q=" + cid + "&r=" + question, true); 

Im keinen Fehler immer noch die Werte werden

+0

Autsch. Sie haben noch nie von Auto-Inkrement-Feldern in MySQL gehört? – Shadow

+0

Ich hatte ursprünglich Autoinkrement verwendet. Aber später dachte ich, dass es wegen eines Problems mit der automatischen Inkrementierung, das zu einem Primärschlüsselkonflikt hätte führen können, nicht eingefügt werden konnte. Also habe ich versucht mich zu erhöhen –

Antwort

0

Ersetzen Sie diese Zeile eingefügt:

if(!mysqli_query($conn,$sql1)){ 

mit diesen

$resultSet = mysqli_query($conn,$sql1); 
if(!$resultSet){ 

Und jetzt diese Zeile ersetzen:

while($rw1 = mysqli_fetch_array($sql1)){ 

Mit diesem einen

while($rw1 = mysqli_fetch_array($resultSet)){ 

Der Grund hierfür ist, dass Sie Abfrage nicht ausgeführt haben und die Ergebnismenge gespeichert, während Aufzeichnung von Ergebnismenge zu holen, Sie direkte Abfrage Variable verwenden, die logisch falsch ist.

0

warum Sie eine einfache Sache, so dass diese nur autoincrement Feld in Ihrer MySQL-Tabelle verwenden, indem Sie den Erhalt Frage-ID aus der Tabelle kompliziert oder verwenden insert_id und das Problem ist mysqli_fetch_array() Funktion funktioniert auf mysqli_query() Ausgabe der Funktion, dh ein Objekt, das Sie geben einer Funktion, die ein Objekt erwartet, einen String an

Verwandte Themen