Προγραμματισμός

Γνώση Υπολογιστών >> Προγραμματισμός >  >> PHP /MySQL Προγραμματισμός

Ποια είναι η βάση δεδομένων που δεν βρέθηκε σφάλμα στο PHP με το MySQL;

Η "βάση δεδομένων δεν βρέθηκε σφάλμα" σε PHP με MySQL εμφανίζεται συνήθως όταν ο κωδικός PHP σας προσπαθεί να συνδεθεί σε μια βάση δεδομένων που είτε δεν υπάρχει είτε δεν έχετε τα κατάλληλα δικαιώματα πρόσβασης. Ακολουθεί μια ανάλυση του σφάλματος, των αιτίων του και του τρόπου να το διορθώσετε:

Κατανόηση του σφάλματος

Όταν χρησιμοποιείτε τις λειτουργίες `mysqli_connect () ή` PDO 'σε PHP για να συνδεθείτε σε μια βάση δεδομένων MySQL, η διαδικασία σύνδεσης περιλαμβάνει:

1. Σύνδεση στον διακομιστή MySQL: Αυτό το βήμα δημιουργεί μια σύνδεση με τον διακομιστή MySQL που εκτελείται στο σύστημά σας.

2. έλεγχος ταυτότητας: Παρέχετε τα διαπιστευτήρια MySQL (όνομα χρήστη και κωδικό πρόσβασης).

3. Επιλογή της βάσης δεδομένων: Τέλος, καθορίζετε το όνομα της βάσης δεδομένων με την οποία θέλετε να εργαστείτε.

Εάν η βάση δεδομένων που καθορίσατε στο βήμα 3 δεν υπάρχει ή εάν δεν έχετε τα απαραίτητα δικαιώματα για να έχετε πρόσβαση σε αυτό, θα συναντήσετε το "δεν βρέθηκε σφάλμα".

Κοινές αιτίες

* Τύπος στο όνομα της βάσης δεδομένων: Ένα απλό ορθογραφικό λάθος στο όνομα της βάσης δεδομένων που παρέχετε κατά τη διάρκεια της διαδικασίας σύνδεσης είναι ένας κοινός ένοχος.

* Εσφαλμένη ευαισθησία των περιπτώσεων: Ορισμένες εγκαταστάσεις MySQL είναι ευαίσθητες σε περιπτώσεις όταν πρόκειται για ονόματα βάσεων δεδομένων. Διπλασιάστε ότι η θήκη ταιριάζει με το πραγματικό όνομα της βάσης δεδομένων.

* Η βάση δεδομένων δεν υπάρχει: Ίσως η βάση δεδομένων να διαγράφηκε τυχαία ή να μην δημιουργήθηκε ποτέ στην πρώτη θέση.

* Ανεπαρκή προνόμια: Μπορεί να έχετε πρόσβαση στον διακομιστή MySQL, αλλά ο λογαριασμός χρήστη σας ενδέχεται να μην έχει τα απαραίτητα δικαιώματα για πρόσβαση στην καθορισμένη βάση δεδομένων.

Αντιμετώπιση προβλημάτων και λύσεις

1. Ελέγξτε τον κωδικό σας:

- Επαληθεύστε το όνομα της βάσης δεδομένων: Βεβαιωθείτε ότι δεν υπάρχουν τυπογραφικά λάθη και ότι η υπόθεση ταιριάζει με το πραγματικό όνομα της βάσης δεδομένων.

- Δικαιώματα αναθεώρησης: Βεβαιωθείτε ότι έχετε τα σωστά διαπιστευτήρια χρήστη και ότι ο χρήστης έχει "επιλέξτε" (ή υψηλότερα) προνόμια στη βάση δεδομένων.

2. Επιθεωρήστε τον διακομιστή MySQL:

- Βάσεις δεδομένων λίστας: Χρησιμοποιήστε τις βάσεις δεδομένων `show ·` εντολή στο κέλυφος MySQL για να δείτε μια λίστα με τις διαθέσιμες βάσεις δεδομένων.

- Ελέγξτε για την ευαισθησία των περιπτώσεων: Χρησιμοποιήστε το `select @@ lower_case_table_names;` command. Μια τιμή `1` υποδεικνύει την ανυπαρξία των περιπτώσεων, ενώ το` 0` σημαίνει ευαίσθητο σε περιπτώσεις.

- Ελέγξτε τα προνόμια χρήστη: Χρησιμοποιήστε τις επιχορηγήσεις `show for 'your_username'@'your_hostname';` command για να δείτε τα προνόμια του χρήστη σας.

3. Δημιουργία δικαιωμάτων ή επιχορηγήσεις:

- Δημιουργία της βάσης δεδομένων: Εάν η βάση δεδομένων λείπει, χρησιμοποιήστε την εντολή `δημιουργήστε βάση δεδομένων ;` `στο κέλυφος MySQL.

- ΠΡΟΒΟΛΗ ΠΡΟΒΟΛΗΣ: Χρησιμοποιήστε την εντολή `Grant Select στο .* Για να δώσετε τα απαραίτητα δικαιώματα.

Παράδειγμα κώδικα (PHP με mysqli)

`` `php

$ servername ="localHost";

$ username ="your_username";

$ password ="your_password";

$ dbname ="your_database_name"; // επαληθεύστε το όνομα της βάσης δεδομένων

// Δημιουργία σύνδεσης

$ conn =mysqli_connect ($ servername, $ username, $ password, $ dbname);

// Ελέγξτε τη σύνδεση

αν (! $ conn) {

die ("Η σύνδεση απέτυχε:". mysqli_connect_error ());

}

echo "συνδεδεμένο με επιτυχία"?

mysqli_close ($ conn);

>>

`` `

Σημαντική σημείωση:

* Συνιστάται ιδιαίτερα να χρησιμοποιείτε προετοιμασμένες δηλώσεις για την προστασία του κώδικα σας από τα ευπάθειας SQL ININESCENT. Αυτό συνεπάγεται τις παραμέτρους δέσμευσης για να αποφευχθεί η εισαγωγή κακόβουλου κώδικα στα ερωτήματά σας.

* Να θυμάστε πάντα να σέβεστε τις αρχές ασφαλείας της βάσης δεδομένων. Μην χρησιμοποιείτε προεπιλεγμένα ή εύκολα υποθέτουν κωδικούς πρόσβασης και χρησιμοποιήστε τα κατάλληλα προνόμια χρήστη.

Με την προσεκτική εξέταση του κώδικα και του διακομιστή σας και ακολουθώντας τα βήματα αντιμετώπισης προβλημάτων, μπορείτε να επιλύσετε αποτελεσματικά τη "βάση δεδομένων που δεν βρέθηκε σφάλμα" στα έργα σας PHP.

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα