php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 09-07-2015, 09:51
derSESO
 Registrierter Benutzer
Links : Onlinestatus : derSESO ist offline
Registriert seit: Jan 2009
Ort: Brunnthal
Beiträge: 13
derSESO ist zur Zeit noch ein unbeschriebenes Blatt
Question keine Ergebnis per PDO-Zugriff (ODBC) aud MS SQL-Server von Linux

Hallo!

Ich nutze zum Entwickeln einen Windows-Rechner mit XAMPP.
Die Live-Umgebung ist ein WebServer unter Linux (Debian), von wo wir per ODBC auf eine MS SQL Datenbank zugreifen.

Jetzt funktioniert auf meiner Entwicklungs-Umgebung alles, aber nach dem Upload auf den WebServer bekomme ich ein leeres Ergebnis zurück.

PHP-Code:
$DB = new PDO("odbc:".$odbcVERB$odbcUSER$odbcPASS);

$SQL 'SELECT ID, bereich1, bereich2 FROM Tabelle WHERE art=:art ORDER BY nummer ASC';

$result $DB->prepare($SQL);
$paramenter = array("art" => $art);
$result->execute($paramenter);
$alles $result->fetchAll(); 
Wie gesagt auf meiner Entwicklungsumgebung bekomme ich als Ergebnis die korrekten 8 Einträge, aber auf dem WebServer bekomme ich nichts zurück?

Achja ... auf beiden System (Entwicklung, Live) ist die DSN korrekt eingerichtet.
__________________
dies schrieb
derSESO
Mit Zitat antworten
  #2 (permalink)  
Alt 09-07-2015, 10:35
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.784
Kropff befindet sich auf einem aufstrebenden Ast
Standard

Mal in den Error-Logs nachgeschaut? Ich tippe auf das übliche Problem mit der Groß- und Kleinschreibung. Linux ist case-sensitive, Windows nicht.
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #3 (permalink)  
Alt 09-07-2015, 10:40
derSESO
 Registrierter Benutzer
Links : Onlinestatus : derSESO ist offline
Registriert seit: Jan 2009
Ort: Brunnthal
Beiträge: 13
derSESO ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also sowohl der Name des DSN und als auch die Spaltennamen und der Tabellename sind korrekt bzgl. der Groß-Kleinschreibung.
__________________
dies schrieb
derSESO
Mit Zitat antworten
  #4 (permalink)  
Alt 09-07-2015, 13:03
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

http://php.net/manual/en/pdo.error-handling.php
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #5 (permalink)  
Alt 09-07-2015, 13:08
derSESO
 Registrierter Benutzer
Links : Onlinestatus : derSESO ist offline
Registriert seit: Jan 2009
Ort: Brunnthal
Beiträge: 13
derSESO ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn es Fehler geben würde, hätte ich es geschrieben.
Ich bekomme als Ergebnis einfach die Antwort, das nichts gefunden wurde.
Was allerdings eben nicht sein kann.
__________________
dies schrieb
derSESO
Mit Zitat antworten
  #6 (permalink)  
Alt 09-07-2015, 13:31
derSESO
 Registrierter Benutzer
Links : Onlinestatus : derSESO ist offline
Registriert seit: Jan 2009
Ort: Brunnthal
Beiträge: 13
derSESO ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn ich mittels odbc_connect() und odbc_exec() usw. abfrage, bekomme ich meine Ergebnisse.
__________________
dies schrieb
derSESO
Mit Zitat antworten
  #7 (permalink)  
Alt 09-07-2015, 16:47
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.784
Kropff befindet sich auf einem aufstrebenden Ast
Standard

was sagt denn print_r(PDO::getAvailableDrivers());?

Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #8 (permalink)  
Alt 10-07-2015, 07:16
derSESO
 Registrierter Benutzer
Links : Onlinestatus : derSESO ist offline
Registriert seit: Jan 2009
Ort: Brunnthal
Beiträge: 13
derSESO ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von Kropff Beitrag anzeigen
was sagt denn print_r(PDO::getAvailableDrivers());?

Peter
Also die Antwort auf dem Live-System lautet:
Array ( [0] => mysql [1] => odbc )

Auf meinem Test-System:
Array ( [0] => mysql [1] => odbc [2] => sqlite )

Wobei das "sqlite" nichts beeinflussen sollte - ich nutze kein "sqlite".


Habe jetzt mit folgender Zeile:
PHP-Code:
$test $DB->query('SELECT TOP 5 * FROM TBA_GESAMT')or die(print_r($DB->errorInfo())); 
folgende Antwort auf dem Live-System:
Code:
Array ( [0] => 00000 [1] => 0 [2] => (SQLExecute[0] at /build/buildd-php5_5.2.0+dfsg-8+etch16-i386-uC66is/php5-5.2.0+dfsg/ext/pdo_odbc/odbc_stmt.c:133) [3] => 00000 ) 1
Auf meinem Test-System bekomme ich 5 korrekte Ergebnisse.
__________________
dies schrieb
derSESO

Geändert von derSESO (10-07-2015 um 07:34 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 10-07-2015, 18:39
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist gerade online
Registriert seit: Mar 2008
Beiträge: 3.794
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Welchen Inhalt hat $test?

Hast du bei PDO auch den Error-Mode auf PDO::ERRMODE_EXCEPTION gesetzt?

http://php.net/manual/en/pdo.error-handling.php

Geändert von h3ll (10-07-2015 um 18:47 Uhr)
Mit Zitat antworten
  #10 (permalink)  
Alt 10-07-2015, 19:06
derSESO
 Registrierter Benutzer
Links : Onlinestatus : derSESO ist offline
Registriert seit: Jan 2009
Ort: Brunnthal
Beiträge: 13
derSESO ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von h3ll Beitrag anzeigen
Welchen Inhalt hat $test?

Hast du bei PDO auch den Error-Mode auf PDO::ERRMODE_EXCEPTION gesetzt?

PHP: Errors and error handling - Manual
Also...
- $test beinhaltet nichts - bekomme ja per "or die()" die Meldung ausgegeben
- den Error-Mode habe ich hinzugefügt -> keine Veränderung
__________________
dies schrieb
derSESO
Mit Zitat antworten
  #11 (permalink)  
Alt 10-07-2015, 19:17
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist gerade online
Registriert seit: Mar 2008
Beiträge: 3.794
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von derSESO Beitrag anzeigen
Also...
- $test beinhaltet nichts - bekomme ja per "or die()" die Meldung ausgegeben
Was ist "nichts"?

NULL?
FALSE?
""?
0?
[]?
Mit Zitat antworten
  #12 (permalink)  
Alt 10-07-2015, 19:23
derSESO
 Registrierter Benutzer
Links : Onlinestatus : derSESO ist offline
Registriert seit: Jan 2009
Ort: Brunnthal
Beiträge: 13
derSESO ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Na eben nichts ... "".
__________________
dies schrieb
derSESO
Mit Zitat antworten
  #13 (permalink)  
Alt 10-07-2015, 19:24
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist gerade online
Registriert seit: Mar 2008
Beiträge: 3.794
h3ll befindet sich auf einem aufstrebenden Ast
Standard

"" ist ein leerer String und nicht "nichts". Das wäre sehr ungewöhnlich. Bist du dir sicher? Warum zeigst du nicht einfach die Ausgabe?
Mit Zitat antworten
  #14 (permalink)  
Alt 10-07-2015, 19:30
derSESO
 Registrierter Benutzer
Links : Onlinestatus : derSESO ist offline
Registriert seit: Jan 2009
Ort: Brunnthal
Beiträge: 13
derSESO ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also...

Die Query wird durch das "or die()" ja abgebrochen.
Das bedeutet, das kein Ergebnis zurück gegeben wird, weil etwas nicht stimmt.

Entferne ich das "or die()" am Ende, dann steht in $test nichts drin.
Normalerweise müsste die Query ja ein Array/Objekt zurück geben.

Ich habe jetzt mal ein "var_dump($test)" ausgegeben.
Ergebnis: bool(false)
__________________
dies schrieb
derSESO
Mit Zitat antworten
  #15 (permalink)  
Alt 10-07-2015, 19:36
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist gerade online
Registriert seit: Mar 2008
Beiträge: 3.794
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von derSESO Beitrag anzeigen
Ich habe jetzt mal ein "var_dump($test)" ausgegeben.
Ergebnis: bool(false)
Also doch nicht "nichts", sondern FALSE. Schwere Geburt, aber endlich ist da Klarheit.

Ich tippe darauf, dass irgendwas mit der Serverkonfiguration nicht passt, aber das wirst du dir vermutlich auch schon gedacht haben. Schon mal den Serveradministrator darauf angesprochen?

Funktioniert wenigstens ein "SELECT 1"?
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
odbc, pdo, php, sql


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
odbc connect zu MS SQL Server 2008 bratwurstbruno PHP Developer Forum 3 09-02-2010 13:40
[SQL allgemein] Replication von MySQL unter Linux nach Microsoft 2003 Server SQL Datenbank alexweb SQL / Datenbanken 2 27-06-2007 16:11
PDO Prepared Statement - Zugriff auf Oracle liefert kein Ergebnis Mc Coke PHP Developer Forum 8 18-05-2007 07:45
Eine Datei von einem Server aud einen anderen kopieren hd-andi PHP Developer Forum 18 21-07-2005 15:36
connect von linux/php4 auf mssqlserver7 via odbc rob_s SQL / Datenbanken 0 09-04-2002 21:14

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Projektmanagement Damals und Heute
Projektmanagement Damals und HeuteWerfen Sie einen Blick auf das, was sich verändert hat, und entdecken Sie, wo die Zukunft dieses Gebietes hinsteuert.

18.01.2021 | Berni

Arbeitsmanagement-Tools
Arbeitsmanagement-ToolsWarum jedes Team Arbeitsmanagement-Tools benötigt. Man schätzt, dass 25% eines durchschnittlichen Mitarbeiter-Tages durch ineffiziente Arbeit vergeudet werden.

11.12.2020 | Berni


 

Aktuelle PHP Scripte

Formmailer Bootstrap 4

Mit dem Formmailer kann man sich eMails über seine Seite zukommen lassen.

08.07.2021 arne-home | Kategorie: PHP/ Formular
Fehlerseite Bootstrap 4

Bei Aufruf einer nicht existierenden Seite, teilen Sie Besuchern mit einer eigenen Fehlerseite mit, dass die gewünschte Seite nicht gefunden wurde. Die eigene Fehlerseite sollte dasselbe Design wie die Website haben. Zudem sollte ein Link zur Startseite a

04.07.2021 arne-home | Kategorie: PHP/ Counter
Upload Bootstrap 4

Mit dem PHP - Uploadscript kann man schnell und einfach Bilder und Dateien auf den Webserver hochladen.

04.07.2021 arne-home | Kategorie: PHP/ File
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:04 Uhr.