PDO nicht in der GoDaddy-Server
Arbeite ich an einem Projekt, das mit einem GoDaddy private server. Sieht aus wie das Projekt mit mysql_connect
Verbindung zu der db.
Ich habe mit PDO und dachte, ich würde erstellen Sie einfach eine neue Datei innerhalb des Servers, so kann ich die Verbindung über PDO. Aber ich kann nicht damit es funktioniert, und ich bekomme keine Fehler zu zeigen, bis, nichts scheint zu passieren, wenn ich diesen code ausführen.
Wenn ich versuche, das echo aus einer Zeichenfolge nach, dass der block von code, der string wird nicht erscheinen, wenn ich echo aus einer Zeichenfolge, bevor dieser block von code, der string wird sich zeigen.
Wenn ich versuche, führen Sie eine vorbereitete Anweisung passiert nichts. PW, UN -, HOST-und db-name sind alle korrekt. Mache ich etwas falsch?
<?php
error_reporting(E_ALL);
$dns = "mysql:host=localhost;dbname=mainsql;";
$username = "bowski";
$passwd = "kingsman1";
try {
$db = new PDO($dsn, $username, $passwd);
} catch (PDOException $ex) {
echo $ex->getMessage();
}
- Wo sind Ihre Anrufe? Sie zeigt die Verbindung, aber nicht mit den Ergebnissen der verbindungen. Alles, was Sie haben, ist
$db = new PDO($dsn, $username, $passwd);
so dass Ihr nicht gehen, etwas zu tun und nur verbinden, Zeigen, wie Sie ziehen Ihre Daten aus $db. - Versuchen Sie, mit
ini_set('display_errors', 1);
- Wenn Ihr versucht zu ziehen Fehler, die Sie tun könnten
$err = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION);
und ändern$db = new PDO($dsn, $username, $passwd);
zu$db = new PDO($dsn, $username, $passwd, $err);
- db deklarierte variable wie $dns und den Aufruf $dsn in db-Verbindung???? Zur Behebung Ihres Problems.
- Dank rjdown, fügte ich hinzu, und sicher genug, ich habe den Fehler. Stellt sich heraus, das PDO-Modul ist nicht installiert. Im mit GoDaddy installieren Sie es jetzt. Wir nutzen PHP 5.4 ich dachte, dass kam mit PDO aus der box.
- Waren Sie in der Lage, Ihnen helfen, das Problem zu beheben? Wenn ja, würden Sie bitte teilen, wie Sie es behoben? (Sie können post eine Antwort unten und akzeptieren Sie Ihre eigene Antwort)
- Kannst du bitte ein feedback geben, vielleicht eine mögliche Antwort. Ich habe ein ähnliches problem.
- Ich hatte go daddy installieren PDO und machen Sie das PDO-Modul aktiv.
- schau auf meine Antwort, es könnte Ihnen helfen, herauszufinden, Ihr problem.
- pardon für die aditinoal Störung, aber wie haben Sie Kontakt mit Ihnen und Sag Ihnen, Sie zu installieren PDO?
- danke für deine Antwort. Das ist das problem. Ich habe, um es zu lösen, jetzt...
- kein problem dude, viel Glück mit ihm.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einige host-Provider oder auch Ihre eigenen server haben könnte PDO deaktiviert oder nicht per default installiert. GoDaddy ist ein solcher Anbieter.
Sehe ich oft Menschen, die darum Ringen, die in ähnlichen Situationen denken, Ihre PDO-code ist falsch, und fragte die gleiche Frage stellen.
Daher ist es immer eine gute Praxis, um die Verfügbarkeit von PDO-Treiber, bevor Sie die PDO-code. Eine schnelle überprüfung ist die Durchführung der
phpinfo();
aufrufen die gibt eine (lange) Tabelle der installierten Komponenten.Selbst wenn Sie PDO installiert, dies ist zu gewährleisten und zu garantieren, dass der PDO-Treiber installiert ist und ausgeführt wird.
Hinzufügen PDO driver checker-code, bevor Sie Ihre PDO-code, sodass Sie sich einige unnötige debugging-Zeit:
Hier ist eine Schritt-für-Schritt-Anleitung zum aktivieren der PDO-Erweiterung auf Godaddy:
Anmelden, um Ihre CPanel
Gehen
Web Hosting -> Manage
für Ihre domainKlicken Sie auf Wählen Sie die PHP-version Menü
Nun haben Sie die Möglichkeit zu wählen, PHP-version aus der dropdown-Liste. Wählen Sie eine andere version als ausgewählt (z.B. 5.4 oder 5.5) und klicken Sie dann auf - Set als aktuelle.
Danach aktivieren Sie die Kontrollkästchen der PHP-Erweiterung, die Sie möchten auf Ihrer Website (z.B. PDO) und klicken Sie dann auf Speichern Schaltfläche im unteren Bereich.
Ich habe genau die gleiche situation als das was du beschrieben hast. Nach einer großen Weile der Verwirrung und Debuggen, und ich fand heraus, den Grund /Lösung. Aber immer noch nicht sicher, warum Godaddy PDO dieses Problem hat.
PHP v5.4.45
Kein Fehler -- wie verwirrend. Und ich testen, funktioniert:
Und jetzt komm ich mit dieser Lösung aber nicht sicher, ob es Godaddy PDO bug?
Fazit:
Sieht es aus wie Godaddy PDO nicht verwenden, dbname, müssen Sie manuell ausführen 'verwenden dbname' nach new PDO und vor allen anderen SQL-Anweisungen