विफल रहता है मुझे किसी MySQL तालिका में रिकॉर्ड डालने के लिए कुछ सरल PHP कोड की समस्या निवारण में समस्याएं आ रही हैं।MySQL डीबी में डालने के लिए PHP पीडीओ कोड
इस कोड WAMP में सीधे प्रवेश किया ठीक काम करता है:
INSERT INTO `users` (`userName`,`userEmail`) VALUES ('orange','[email protected]')
इस PHP कोड काम नहीं करता:
<?php
$dbHost="localhost";
$dbName="project";
$dbUser="admin";
$dbPassword="abcd";
$dbh=new PDO("mysql:host=$dbHost;dbName=$dbName", $dbUser, $dbPassword);
print_r($dbh);
echo "</br>";
print_r($dbh->errorInfo());
$query=$dbh->prepare("INSERT INTO users (userName, userEmail) VALUES (?,?)");
echo "</br>";
print_r(var_dump($query->errorInfo()));
echo "</br>";
print_r($query->errorCode());
echo "</br>";
print_r($dbh->errorInfo());
$query->bindValue(1, 'apple');
echo "</br>";
print_r(var_dump($query->errorInfo()));
echo "</br>";
print_r($query->errorCode());
echo "</br>";
print_r($dbh->errorInfo());
$query->bindValue(2, '[email protected]');
echo "</br>";
print_r(var_dump($query->errorInfo()));
echo "</br>";
print_r($query->errorCode());
echo "</br>";
print_r($dbh->errorInfo());
$inserted=$query->execute(); //True if succesful, False if not.
echo "</br>";
print_r(var_dump($query->errorInfo()));
echo "</br>";
print_r($query->errorCode());
echo "</br>";
print_r($dbh->errorInfo());
echo "</br>";
if ($inserted){print_r("true");}else{print_r("false");};
?>
क्या मैं जब मैं पेज पर अमल निम्नलिखित प्रिंटआउट है:
PDO Object ()
Array ([0] => [1] => [2] =>)
array(3) { [0]=> string(0) "" [1]=> NULL [2]=> NULL }
Array ([0] => 00000 [1] => [2] =>)
array(3) { [0]=> string(0) "" [1]=> NULL [2]=> NULL }
Array ([0] => 00000 [1] => [2] =>)
array(3) { [0]=> string(0) "" [1]=> NULL [2]=> NULL }
Array ([0] => 00000 [1] => [2] =>)
array(3) { [0]=> string(5) "3D000" [1]=> int(1046) [2]=> string(20) "No database selected" }
3D000
Array ([0] => 00000 [1] => [2] =>)
false
रिकॉर्ड डीबी में डाला नहीं गया है। क्या मैं गलत हूं? मुझे यकीन नहीं है कि मुझे print_r में क्या देखना चाहिए, मैं उन्हें उत्तरदाताओं के लिए सहायता प्रदान कर रहा हूं।
धन्यवाद,
JDelage
संपादित - मैं print_r की टिप्पणी में सिफारिश की गयी।
यहाँ है कि मैं क्या WAMP में देखते हैं:
http://jdelage.public.s3.amazonaws.com/project_sch.jpg
आपके द्वारा चलाए जा कोशिश कर सके 'print_r ($ dbh-> errorInfo());' कनेक्शन और क्वेरी के बाद? यह कुछ उपयोगी डीबगिंग जानकारी देना चाहिए। – lonesomeday
सभी प्रिंट स्टेटमेंट्स के बजाय आपको यहां क्या करना है, '$ query' do' var_dump ($ query-> errorInfo()) की त्रुटि स्थिति की जांच करना है; 'और '$ query-> errorCode()' –
जांचें मैंने कोड को संशोधित करने के लिए संशोधित किया है। – JDelage