Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 73%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 22%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 19%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 11%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 393 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

jimmy

Tripel-As

Dabei seit: 17.01.2003

Beiträge: 236

 

1 Zum Seitenanfang

Freitag, 17. Januar 2003, 11:33

Fehlermeldungen umgehen

Wei kann ich am geschicktesten die Anzeige von php-Fehlermeldung (z.B. gescheiterter sql-connect) umgehen?
Wie macht Ihr das so?
 

SevenofNine

Foren Gott

Dabei seit: 30.10.2002

Beiträge: 5 219

 

2 Zum Seitenanfang

Freitag, 17. Januar 2003, 11:43

Hallo,

Um Fehlermeldungen abzufangen, die eine PHP-Funktion bei deren Ausführung ausgibt, genügt es, ein @ vor den betreffenden Befehl zu setzen.
Beispiel: $db = @mysql_connect("localhost","test","test");

Das Unterdrücken der Ausgabe von Fehlermeldungen ist nützlich, wenn man den Besucher einer Seite nicht mit kryptischen Fehlermeldungen konfrontieren will. Man sollte allerdings dafür sorgen, dass der Benutzer darüber informiert, dass er die Seite nicht nutzen kann, da ein Fehler aufgetreten ist.
Beispiel: $db = @mysql_connect("localhost","test","test");
if (!$db) {
die("Es trat ein Fehler auf, das Skript wird beendet!");
}

In diesem Beispielskript wird versucht, eine Verbindung zu einer Datenbank aufzubauen. Schlägt dies fehl (if (!$db)), wird eine Fehlermeldung ausgegeben und der Skriptablauf mit dem Befehl die() beendet.

Selbstverständlich ist es nicht empfehlenswert, jede Fehlermeldung stur zu unterdrücken, sondern die Ursache zu bekämpfen und den Fehler zu bereinigen.

gruß

Seven

Quelle:
eine php und mysql FAQ gefunden durch www.google.de
Bevor du hier Fragen stellst, lese alle Dokumentationen und klicke die folgenden Links um mehr zu erfahren
WMW Forensuche,
WMW F.A.Q. und/oder
Allgemeine suche
 

jimmy

Tripel-As

Dabei seit: 17.01.2003

Beiträge: 236

 

3 Zum Seitenanfang

Freitag, 17. Januar 2003, 11:50

danke für die schnelle Antwort ...

kann ich statt eines einfachen Textes auch eine Seite (ähnlich einer 404er Meldung anzeigen lassen)?
 

SevenofNine

Foren Gott

Dabei seit: 30.10.2002

Beiträge: 5 219

 

4 Zum Seitenanfang

Freitag, 17. Januar 2003, 12:03

Hallo

Also was du anzeigst ist doch völlig egal du kannst doch statt der meldung auch nen ganze html batterie anzeigen lassen so wie du es willst ....
statt text was halt erscheinen soll das kann dann auch ne art 404 oder 500 sein ....

Gruß

Seven

Nachtrag:

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Zunächst wird die Verbindung zur MySQL-Datenbank aufgebautVorher müssen Sie jedoch die drei Variablen
$host="";
$user="";
$pswd="";
setzen.
Danach wird eine Verbindung zu MySQL mit folgender Codezeile aufgebaut:
@mysql_connect($host$user$pswd);

Das soll womögliche Fehlermeldungen verhindern.
Die Abfrage ob die SQL-Abfrage erfolgreich warerfolgt mit einer einfachen BedingungWenn die Abfrage false istwird der Fehler ausgegeben.

if (!$res=mysql_query("")) {
echo "Ein mysql-fehler ist aufgetreten: ".mysql_error()."<br>\n";

Ansonsten kann man die Daten aus der Abfrage weiter verarbeiten.

} else { 
# Query war erfolgreich, daten können weiterverarbeitet werden
}

Hier nun der gesamte Code. Der Code lässt sich auch ideal in ein Objekt, oder in eine einfache Funktion einbauen.

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$host="";
$user="";
$pswd="";
@mysql_connect($host$user$pswd);


if (!$res=mysql_query("")) {
echo "Ein mysql-fehler ist aufgetreten: ".mysql_error()."<br>\n";

} else { 
# Query war erfolgreich, daten können weiterverarbeitet werden
?>
Bevor du hier Fragen stellst, lese alle Dokumentationen und klicke die folgenden Links um mehr zu erfahren
WMW Forensuche,
WMW F.A.Q. und/oder
Allgemeine suche

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »SevenofNine« (17. Januar 2003, 12:07)

 

Matt

Foren Gott

Dabei seit: 17.09.2002

Beiträge: 5 573

 

5 Zum Seitenanfang

Freitag, 17. Januar 2003, 13:12

Das gaht aber auch einfacher ohne Query:

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
<?php
$verbindung = @mysql_connect ($host$user$pws);
if ($verbindung)
{
 print "OK, kannst schreiben was du willst";
} 
else
{
print "Nicht Ok, kannst schreiben was du willst";
} 
?>
nyuuu
 

mrfreeze

Tripel-As

Dabei seit: 18.10.2002

Beiträge: 154

 

6 Zum Seitenanfang

Samstag, 18. Januar 2003, 02:21

Und zu guter Letzt kann man dann schließlich noch ganze Fehlerseiten mittels include einbinden :D

PHP-Quelltext

1
2
3
4
5
<?php
$connect = @mysql_connect($host,$user,$pw);
if(!$connect)
  include("error/404.html");
?>


MfG

MrFreeze
 

Ähnliche Themen