| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

27-07-2010, 21:19
|
|
sypr0
Registrierter Benutzer
|
|
Registriert seit: Feb 2007
Beiträge: 167
|
|
Problem mit der Ausführung eines SQL Statements
Hi zusammen,
habe ein sehr komisches Problem. (übrigens hatte ich so ein Problem noch nie):
Ich habe eine SQL-Abfrage, die durch ein PHP Skript ausgeführt werden soll. Wenn diese Abfrage vom php-skript ausgeführt wird, erhalte ich keine Ergebnismenge. Wenn ich die identische Abfrage manuell ausführe z.B. via SQL-fenster bei phpmyadmin erhalte ich eine Ergebnismenge ?!
Wie kann das sein ?
Hatte schon mal jmd ein ähnliches PRoblem ? und kann mir sagen worans gelegen hat?
Anbei noch das Statement im Skript
PHP-Code:
SELECT d.id, d.date, d.employees_idEmployee, d.starttime, d.endtime, oae.category, oae.idEmployee FROM dispatch AS d LEFT JOIN employees AS e ON e.idEmployee = d.employees_idEmployee LEFT JOIN outlookAppointment_employee AS oae ON employees_idEmployee = oae.idEmployee WHERE `date` BETWEEN '$datestart' AND '$dateend' AND( ( ((`starttime` >= TIME( '$timestart' )) AND (`starttime` <= TIME( '$timeend' )) AND (`endtime` >= TIME( '$timestart' )) AND (`endtime` >= TIME( '$timeend' ))) OR((`starttime` >= TIME( '$timestart' )) AND (`starttime` <= TIME( '$timeend' )) AND (`endtime` >= TIME( '$timestart' )) AND (`endtime` <= TIME( '$timeend'))) OR((`starttime` <= TIME( '$timestart' )) AND (`starttime` <= TIME( '$timeend' )) AND (`endtime` >= TIME( '$timestart' )) AND (`endtime` >= TIME( '$timeend'))) OR((`starttime` <= TIME( '$timestart' )) AND (`starttime` <= TIME( '$timeend' )) AND (`endtime` >= TIME( '$timestart' )) AND (`endtime` <= TIME( '$timeend'))) ) OR ( ((oae.start >= date ($datestart)) AND (oae.start <= date ($dateend)) AND (oae.end >= date ($datestart)) AND (oae.end >= date ($dateend))) OR((oae.start >= date ($datestart)) AND (oae.start <= date ($dateend)) AND (oae.end >= date ($datestart)) AND (oae.end <= date ($dateend))) OR((oae.start <= date ($datestart)) AND (oae.start <= date ($dateend)) AND (oae.end >= date ($datestart)) AND (oae.end >= date ($dateend))) OR((oae.start <= date ($datestart)) AND (oae.start <= date ($dateend)) AND (oae.end >= date ($datestart)) AND (oae.end <= date ($dateend))) ) ) AND employees_idEmployee = $id
Geändert von sypr0 (27-07-2010 um 21:24 Uhr)
|

27-07-2010, 21:21
|
|
streuner
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Ort: Lüneburg
Beiträge: 461
|
|
Ich habe leider meine Glaskugel gerade nicht hier um Dir die Frage zu beantworten  !
Wir brauchen natürlich immer etwas mehr Angaben, wie z.B. deinen Code und wie Du ihn genau ausführst!
Thanx.
mfg streuner
__________________
Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.
"Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"
|

27-07-2010, 21:28
|
|
sypr0
Registrierter Benutzer
|
|
Registriert seit: Feb 2007
Beiträge: 167
|
|
Code ist nun angehängt. Ausgeführt wurde er zunächst mal via Zend_DB und mit hilfe der Adapter methoden. Danach hab ichs mal auf klassischem wege via mysql_query versucht.Habe aber weiterhin das problem, dass wenn der code via skript ausgeführt wird keine ergebnismenge geliefert wird, wohingegen die ausführung des durch z.b. echo $sql generierten Statements im phpmyadmin sql fenster, eine Ergebnismenge zurückliefert
|

27-07-2010, 21:29
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.309
|
|
Hilft ein
PHP-Code:
or die(mysql_error());
weiter?
Peter
PS: Bitte Code so umbrechen, dass auch auch Leute mit einer Auflösung unter 1600x1200 nicht horizontal scrollen müssen.
Danke.
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

27-07-2010, 21:31
|
|
streuner
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Ort: Lüneburg
Beiträge: 461
|
|
So wie Kropff schon gesagt hat, würde ich das noch mit einbauen und Du bist dir natürlich auch sicher, dass alle angegebenen Variablen korrekt befüllt werden??
mfg Streuner
__________________
Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.
"Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"
|

27-07-2010, 21:35
|
|
eagle275
Registrierter Benutzer
|
|
Registriert seit: Jun 2010
Beiträge: 371
|
|
daneben bist du mindestens der 25te, der sich "blind" darauf verlässt, das PHP schon die Variablen ersetzt, anstatt wie eigentlich vorgesehen den "." Operator zum zusammenfügen von Strings zu verwenden....
bist du dir sicher, dass deine Datum-Variablen das Datum in der Form enthalten, die mysql als "mundgerecht" ansieht ?
und wo ich nochmal schaue - zur Vermeidung von Tipp-Fehlern .. lass die ` weg.. sowohl php als auch phpmyadmin verstehen die Abfragen durchaus auch ohne die "Dingers" während sie der normale Programmierer im entscheidenden Fall mit Apostroph verwechselt und sich dann nen Wolf sucht
__________________
Wer LESEN kann, ist klar im Vorteil!
Geändert von eagle275 (27-07-2010 um 21:40 Uhr)
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| 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.
HTML-Code ist aus.
|
|
|
|
PHP News
|