Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

पीएचपी:पसंद/नापसंद काउंटर

आप जो देख रहे हैं वह है table MySQL आरक्षित शब्दों में से एक है लेकिन आप इसे कॉलम नाम के रूप में उपयोग करने का प्रयास कर रहे हैं। आपके कॉलम को वास्तव में table_name . कहा जाता है हालांकि, आपके प्रश्न के आधार पर।

प्लेसहोल्डर्स के साथ एक क्वेरी इस तरह दिखती है:

INSERT INTO votes (ip, table_name, imgid) 
  VALUES (?, ?, ?)
  ON DUPLICATE KEY UPDATE
    ip=VALUES(ip),
    table_name= VALUES(table_name),
    imgid=VALUES(imgid)

mysqli के साथ याद रखें आप ऐसा करके इस क्वेरी को निष्पादित कर सकते हैं:

$sth = $mysqli->prepare("...");
$sth->bind_param("sss", $_SERVER['REMOTE_ADDR'], $table, $imgid);
$sth->execute();

दस्तावेज़ीकरण इस प्रक्रिया का अधिक विस्तार से वर्णन करता है, लेकिन "sss" बात तीन स्ट्रिंग्स को संदर्भित करती है, और तीन मान पैरामीटर के रूप में पास किए जाते हैं।

आपको शायद पीडीओ क्योंकि यह mysqli . की तुलना में उपयोग करने के लिए बहुत कम उधम मचाता है . डेटाबेस ढांचे का उपयोग करना और भी बेहतर होगा जैसे सिद्धांत आपके लिए बहुत सारे SQL गंदे काम करने के लिए। CodeIgnighter जैसे ढांचे का उपयोग करना और भी बेहतर होगा , केकपीएचपी या FuelPHP आपको बनाने के लिए एक नींव देने के लिए। जमीन से हाथ से अनुप्रयोगों का निर्माण करना अत्यंत समय लेने वाला और काफी अधिक त्रुटि प्रवण है।

ध्यान देने वाली एक और बात यह है कि आपको अपने कोड में लगातार नामकरण का प्रयास करना चाहिए। आप $table . का संदर्भ लें table_name . के मान के रूप में , इसलिए यह संभवतः $table_name . होना चाहिए शुरू करने के लिए।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. यदि MySQL में एक इंडेक्स बनाने या छोड़ने के लिए मौजूद है तो मैं कैसे काम कर सकता हूं?

  2. MySQL समय आधारित ट्रिगर

  3. MySQL पीडीओ क्वेरी से तेज तैयार? यह सरल परीक्षण यही दिखाता है

  4. एक प्रश्न के लिए इस MySQL तालिका को और कैसे अनुकूलित करें

  5. mysql दिनांक शो परिणाम आज/कल/सप्ताह