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

PDOStatement प्रकार की वस्तु को सरणी के रूप में उपयोग नहीं कर सकता

से:

$admin = $CONNECT_TO_DATABASE->prepare("SELECT * FROM admin WHERE username = :username");
[...]
if ($settings['create_admins'] > 0 || $admin['super_admin'] > 0 ) {

$admin PDOStatament type प्रकार का है जो एक वर्ग है और एक सरणी नहीं है। इसलिए आप [] . को कॉल नहीं कर सकते उस पर ऑपरेटर।

साथ ही आपको वास्तव में $admin . को हमेशा असाइन नहीं करना चाहिए प्रत्येक विधि के रिटर्न परिणाम के लिए क्योंकि अधिकांश PDOStatament के तरीके बूलियन मान लौटाते हैं:

$admin = $CONNECT_TO_DATABASE->prepare("SELECT * FROM admin WHERE username = :username");
$admin->bindValue(':username', $_SESSION['user']);
$admin->execute();

super_admin को पुनः प्राप्त करने के लिए admin . से कॉलम तालिका जो आपको जोड़नी चाहिए (execute() . के बाद कथन):

$result = $admin->fetch(PDO::FETCH_ASSOC);

जो पॉप्युलेट होगा (उम्मीद है, यह टेबल स्कीमा पर निर्भर करता है) $result['super_admin']



  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. मैं हाइबरनेट का उपयोग करके अंतिम सम्मिलित आईडी कैसे प्राप्त कर सकता हूं?

  3. mysql प्रत्येक पंक्ति में अन्य तालिका से पंक्तियों की संख्या दिखाएं

  4. mysql विदेशी कुंजी बाधा गलत तरीके से बनाई गई त्रुटि है

  5. दो कॉलम mysql . से संयोजन की स्थिति