मैं mysqli की क्वेरी() और तैयार() के बीच अंतर को समझने की कोशिश कर रहा हूं। मेरे पास नीचे कोड है, और मैं दोनों से एक ही परिणाम प्राप्त करना चाहता हूं। हालांकि तैयार() अपेक्षा के अनुसार काम नहीं करता है। क्यूं कर?तैयार() बनाम क्वेरी() mysqli
ओएस
विस्टा 64 बिट/पीएचपी संस्करण 5.2.9
mysqli
mysqli समर्थन सक्षम:
// this works
if ($query = $this->db->query("SELECT html FROM static_pages WHERE page = 'cities'")) {
$result = $query->fetch_row();
echo $result[0];
$query->close();
}
//this does not work
//result is empty
$cities = 'cities';
$stmt = $this->db->prepare("SELECT html FROM static_pages WHERE page = ?");
$stmt -> bind_param("s", $cities);
$stmt->execute();
$stmt->bind_result($result);
$stmt->fetch();
echo $result;
$stmt->close();
$this->db->close();
इन अपने सर्वर कॉन्फ़िगरेशन के रूप में अनुरोध कर रहे हैं
क्लाइंट API लाइब्रेरी संस्करण 5.0.51a
क्लाइंट API हैडर संस्करण 5.0.51a
MYSQLI_SOCKET /tmp/mysql.sock
निर्देशक स्थानीय मूल्य मास्टर मूल्य
mysqli। default_host कोई मान नहीं मान
mysqli.default_port 3306 3306
mysqli.default_pw कोई मूल्य नहीं कोई मूल्य नहीं
mysqli.default_socket कोई मूल्य नहीं कोई मूल्य नहीं
mysqli.default_user कोई मूल्य नहीं कोई मूल्य नहीं
mysqli.max_links असीमित असीमित
mysqli.reconnect बंद
बंद
आपको क्या गलत हो रहा है यह देखने के लिए $ stmt-> त्रुटि() प्रिंट करना होगा। –
आह, क्षमा करें, यह एक चर है, विधि नहीं है। $ stmt-> त्रुटि –
उस स्थिति में $ stmt-> त्रुटि का कोई मूल्य नहीं है। मैंने इसे सभी लाइनों पर करने की कोशिश की। – Mike