2016-04-10 14 views
2

MySQL veritabanına veri eklemek için basit bir PHP kodum var ama bana bir ayrıştırma hatası veriyor.INSERT PHP'de Sorgu Ayrıştırma

Hata:

Parse error: parse error in /Users/Navs13/Desktop/RS/code.php on line 17 what might be the problem. find the code below.

<?php 
$servername = "localhost"; 
$username = "admin"; 
$password = "pwd"; 
$dbname = "testdb"; 

// Create connection 
$conn = mysql_connect($servername, $username, $password, $dbname); 
// Check connection 
if (!$conn) { 
die("Connection failed: " . mysql_error()); 
} 

$x=10; 
//VALUES ('$_POST[x]')"; 
//echo $_POST[x]; 

$sql = "INSERT INTO test (disliked)" 
    ."VALUES ($x)"; 
if (mysql_query($sql, $conn) === TRUE) { 
    echo "New record created successfully"; 
} else { 
echo "Error: " . $sql . "<br>" . mysql_error(); 
} 

mysql_close($conn); 
?> 

cevap

0

SQL ile ilgili isimler için keneler:

$sql = "INSERT INTO `test` (`disliked`) VALUES ('$x')"; 

Not:mysql_* fonksiyonları zaten kaldırıldığını, bunun yerine mysqli_* kullanın:

$conn = mysqli_connect($servername, $username, $password, $dbname); 

if (!$conn) { 
    die("Connection failed: " . mysqli_error($conn)); 
} 

$x=10; 

$sql = "INSERT INTO `test` (`disliked`) VALUES ('$x')"; 

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

mysqli_close($conn); 
+0

teşekkürler bu benim için çalıştı :) – navs89

+0

@ navs89 Rica ederim! Teşekkürler :) – Panda

2

bu deneyin:

Senin durumunda
$sql = "INSERT INTO test (disliked) VALUES ('".$x."')" or die(mysql_error()); 
1

, bu

$query = "INSERT INTO test (disliked) values('$x');"; 
    if (!mysql_query($query, $conn)) { 
     die('Error: ' . mysql_error()); 
    } 

Projem aşağıdaki kodları ile iyi çalışır deneyebilirsiniz:

$q1 = "INSERT INTO users (username,email,password,state) values('$username','$email','$password',1);"; 
if (!mysql_query($q1, $conn)) { 
    die('Error: ' . mysql_error()); 
} 

PS: mysql_connect and mysql_query are deprecated. mysqli_connect ve mysqli_query kullanmak daha iyidir. Geri PHP değişkenleri etrafında tek tırnak ve gerekir