SetaPDF
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 20.11.2006, 13:13   #1
TP-Insider
 
Benutzerbild von dieter99
 
Registriert seit: Dec 2001
Ort: Oberfranken
dieter99 ist auf einem guten Weg

__line__


Hallo,
meine SQL Abfrage lautet:

$variable=mysql_query($sql) or die (mysql_error());

Wenn das Query fehlerhaft ist wird der Fehler mittels mysql_error ausgegeben. Wo muss ich __LINE__ plazieren damit die Fehlermeldung und die betroffene Zeile ausgegeben wird???
dieter99 ist offline   Mit Zitat antworten


Alt 20.11.2006, 13:44   #2
TP-Supporter
 
Registriert seit: Dec 2005
[jacky] ist auf einem guten Weg
$variable = @mysql_query($sql) or die (mysql_error() . ' @file ' . __file__ . ' in line ' . __line__);
[jacky] ist offline   Mit Zitat antworten
Alt 20.11.2006, 13:51   #3
TP-Insider
 
Benutzerbild von dieter99
 
Registriert seit: Dec 2001
Ort: Oberfranken
dieter99 ist auf einem guten Weg
ok, dieser Code funktioniert

PHP-Code:
die (mysql_error().__LINE__); 
warum funktioniert dieser Code nicht:

PHP-Code:
die (__LINE__); 
oder

PHP-Code:
die (mysql_error(__LINE__)); 
dieter99 ist offline   Mit Zitat antworten
Alt 20.11.2006, 14:16   #4
TP-Specialist
 
Benutzerbild von rewboss
 
Registriert seit: Mar 2005
Ort: Unterfranken
rewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKE
mysql_error(__LINE__) kann deshalb nicht funktionieren, weil mysql_error() als optionales Argument eine MySQL-Verbindungskennung erwartet, und __LINE__ ist eine Zahl. mysql_error() gibt eine Zeichenkette aus, diese wird mit Hilfe des Punkts mit __LINE__ (die in eine Zeichenkette umgewandelt wird) konkateniert.

Warum __LINE__ alleine nicht funktioniert ist mir nicht klar, es sei denn, du hast einen Tippfehler gemacht.
rewboss ist offline   Mit Zitat antworten
Alt 20.11.2006, 14:32   #5
321
TP-Specialist
 
Benutzerbild von 321
 
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
321 hilft, wo's geht321 hilft, wo's geht321 hilft, wo's geht
Ich habe noch nie __LINE__ und oder __FILE__ angegeben aber es erschien noch immer in der Meldung.
Da __LINE__ keine Variable sondern ein Platzhalter ist,
versuche es doch mal mit: die("__LINE__")
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]


use my HTML-Tester

Motto'06: Mut zur deutschen Sprache!
321 ist offline   Mit Zitat antworten
Alt 20.11.2006, 15:58   #6
TP-Insider
 
Benutzerbild von dieter99
 
Registriert seit: Dec 2001
Ort: Oberfranken
dieter99 ist auf einem guten Weg
Zitat:
Zitat von 321
versuche es doch mal mit: die("__LINE__")
Als Ausgabe bekomme ich: __LINE__
dieter99 ist offline   Mit Zitat antworten
Alt 20.11.2006, 18:13   #7
TP-Specialist
 
Benutzerbild von rewboss
 
Registriert seit: Mar 2005
Ort: Unterfranken
rewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKE
Zitat:
Zitat von 321
Da __LINE__ keine Variable sondern ein Platzhalter ist
OK, __LINE__ ist keine Variable sondern eine magische Konstante -- also eine Konstante, die sich variiert. Konstanten, im Gegensatz zu echten Variablen, werden auch innerhalb von doppelten Anführungszeichen nicht geparst, weswegen die("__LINE__") auch nicht funktionieren kann.
rewboss ist offline   Mit Zitat antworten
Alt 20.11.2006, 22:09   #8
321
TP-Specialist
 
Benutzerbild von 321
 
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
321 hilft, wo's geht321 hilft, wo's geht321 hilft, wo's geht
hab nun das bei php.net gefunden:
PHP-Code:
die ("Error" " File: " __FILE__ " on line: " __LINE__); 
Ich würde aber noch mysql_error() dran hängen.
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]


use my HTML-Tester

Motto'06: Mut zur deutschen Sprache!
321 ist offline   Mit Zitat antworten
Alt 20.11.2006, 23:52   #9
TP-Specialist
 
Benutzerbild von rewboss
 
Registriert seit: Mar 2005
Ort: Unterfranken
rewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKE
Ja... so weit waren wir schon...
rewboss ist offline   Mit Zitat antworten
Alt 21.11.2006, 10:24   #10
321
TP-Specialist
 
Benutzerbild von 321
 
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
321 hilft, wo's geht321 hilft, wo's geht321 hilft, wo's geht
Ja? Bislang war doch alles noch unklar!
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]


use my HTML-Tester

Motto'06: Mut zur deutschen Sprache!
321 ist offline   Mit Zitat antworten
Alt 21.11.2006, 11:50   #11
TP-Specialist
 
Benutzerbild von rewboss
 
Registriert seit: Mar 2005
Ort: Unterfranken
rewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKE
Die Frage hat sich fast geklärt. Die Frage, die noch nicht geklärt ist:

Warum funktioniert das hier:
PHP-Code:
die(mysql_error()).__LINE__); 
...aber nicht das hier:
PHP-Code:
die(__LINE__); 
Laut der Dokumentation, müsste die zweite Zeile funktionieren: Sie gibt den Wert von __LINE__ aus und bricht die Ausführung des Skripts ab -- zwar nicht sehr hilfreich, aber es gibt keinen Grund, den ich sehen kann, warum das nicht funktionieren soll.
rewboss ist offline   Mit Zitat antworten
Alt 21.11.2006, 12:48   #12
TP-Senior
 
Registriert seit: May 2006
Ort: Dresden
SebastianM ist auf einem guten Weg
Wird die Konstante __LINE__ vielleicht erst in der Funktion mysql_error() mit einem Wert belegt? Das würde erklären, warum eine Ausgabe im Anschluss an den Funktionsaufruf funktioniert, ohne vorherigen Funktionsaufruf jedoch nicht.
SebastianM ist offline   Mit Zitat antworten
Alt 21.11.2006, 14:45   #13
321
TP-Specialist
 
Benutzerbild von 321
 
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
321 hilft, wo's geht321 hilft, wo's geht321 hilft, wo's geht
@rewboss:
vermutlich weil die 'magische Konstante' nicht vom Type string ist,
ein solcher aber von die() erwartet wird.
mysql_error() hingegen gibt einen String zurück und an den kann __LINE__ angefügt werden.

die("".__LINE__) sollte auch funktionieren, wenn ich Recht habe.
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]


use my HTML-Tester

Motto'06: Mut zur deutschen Sprache!
321 ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
__line__ __line__
« Abgleich Datenbank lokal/online | filmgalerie mit php und mysql »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:31 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67