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

PHP/MySQL - पहले से ऑटो जेनरेट की गई तालिका में एक पंक्ति के लिए स्वत:उत्पन्न लिंक कैसे हटाएं?

इसे बदलें

<a href='#'><span class='delete'>

करने के लिए

<a href='deletepage.php?id=" . $row["ID"] . "'><span class='delete'>

फिर "deletepage.php" पर, आप उस पेज को जो भी कॉल करने जा रहे हैं, वह कुछ ऐसा करें

require_once('dbconnect.php');
$id = (int)$_GET['id'];
$sql = "DELETE FROM Predictions WHERE id=" . $id;    
if($conn->query($sql) === TRUE) {
    echo "Item deleted successfully";
} else {
    echo "Error deleting record; ". $conn->error;
}
$conn->close();

मुझे नहीं पता कि आप यहां किस ड्राइवर का उपयोग कर रहे हैं, लेकिन पसंदीदा समाधान पैरामीटरयुक्त क्वेरी के साथ तैयार कथन का उपयोग करना होगा।

इतना ही आप id भेजें एक GET . के माध्यम से आपके "डिलीट पेज" का पैरामीटर। वह पृष्ठ उस मान को लेता है, उसे एक int . में डालता है SQL इंजेक्शन से बचने के लिए (नीचे आगे पढ़ें), और फिर डेटा हटा देता है। आप सफलता को प्रतिध्वनित करने के बजाय header . का उपयोग कर सकते हैं उन्हें पिछले पृष्ठ पर पुनर्निर्देशित करने के लिए। आप एक GET जोड़ सकते हैं उस यूआरएल के पैरामीटर एक सफलता संदेश प्रदर्शित करते हैं। (या आप यह सब हमेशा एक ही पेज पर कर सकते हैं और बस जांच सकते हैं कि क्या id भेजा जा रहा है)।

इसके अलावा आपके पास यह पृष्ठ किसी सुरक्षित लॉगिन सिस्टम के पीछे होना चाहिए। आप नहीं चाहते कि कोई भी उपयोगकर्ता/बॉट उस deletepage.php . को निष्पादित कर सके ।

मैं PHP में SQL इंजेक्शन को कैसे रोक सकता हूं?
http://php.net/manual/en /security.database.sql-injection.php
https://www.owasp.org /index.php/SQL_Injection_Prevention_Cheat_Sheet#Defense_Option_1:_Prepared_Statements_.28Parameterized_Queries.29

मैं अनुमान लगा रहा हूँ कि आप mysqli का उपयोग कर रहे हैं तो उस ड्राइवर के साथ तैयार बयानों के लिए इस दस्तावेज़ पर एक नज़र डालें, http ://php.net/manual/hi/mysqli.quickstart.prepared-statements.php




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक यूनिक्स टाइमस्टैम्प का उपयोग करके एक महीने के भीतर एसक्यूएल गणना रिकॉर्ड

  2. MySQL या MariaDB के लिए गैलेरा क्लस्टर का उपयोग करते हुए एकाधिक डेटा केंद्र सेटअप

  3. डिफ़ॉल्ट दिनांक स्वरूप बदलें लार्वा sql क्वेरी

  4. CSV से MySQL DB में डेटा सम्मिलित करना बहुत धीमा है

  5. केवल mysql का उपयोग करके Magento में सभी उत्पाद आईडी, स्कस, उत्पाद नाम, विवरण कैसे खींचें?