Versio

mysql error functie..

ik heb dit voor mijn eigen site geschreven..
je moet de pagina overal includen waar je het wilt..

zo moet je hem gebruiken:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$query
= mysql_query("SELECT * FROM table WHERE dit = 'dat'") or error("Een foutmelding");
/*als het fout gaat, krijg je de melding:
Een foutmelding <br />
Er is dus een mail naar de webmaster gestuurd<br />
Hij probeert er zo snel mogelijk iets aan te doen*/

?>


de rest van de pagina wordt nu niet weergeven, wil je dit wel, dan moet je de exit(); op de regel 49 en/of 56 weghalen

Gesponsorde koppelingen

BHosted Hosting al vanaf € 1,- per maand

Controleer nu gratis jouw domeinnaam:

  

PHP script bestanden

  1. mysql-error-functie

 

10 reacties op 'mysql error functie..'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Eric Cartman
Eric Cartman
7 jaar geleden
 
0 +1 -0 -1
Misschien dat de functie error_log (o.i.d.) hier een stuk handiger/sneller voor is?
Jan Koehoorn
Jan Koehoorn
7 jaar geleden
 
0 +1 -0 -1
Normaal gesproken schrijf je errors naar een log. Je zou een check kunnen doen op het error nummer (met mysql_errno) en alleen bij ernstige fouten een mail versturen. Ik zou ook geen exit() gebruiken. Niet alle fouten hoeven te betekenen dat een hele pagina meteen afgekapt moet worden.

Spelling: het is: "Hij probeert er zo snel mogelijk iets aan te doen"
Leroy Boerefijn
Leroy Boerefijn
7 jaar geleden
 
0 +1 -0 -1
ik heb dit script in eerste instantie voor mezelf geschreven..
bij mij is exit wel nodig..
en ik vond het handig om de fouten in mijn mailbox te krijgen.. dan hoef ik niet apart te kijken.. (meestal is er toch niks..)

je kunt anders iets inbouwen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
function error($foutmelding, $lijn = __line__){
?>

vervangen door:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
function error($foutmelding, $belangrijk, $lijn = __line__){
?>


en dan als $belangrijk true is exit gebruiken..
anders echo..


7 jaar geleden
 
0 +1 -0 -1
Is dit een script voor de scriptlib? Dit is toch gewoon basis error afhandeling?
Jonathan -
Jonathan -
7 jaar geleden
 
0 +1 -0 -1
gevorderd data verwerking? :S verder wel goed hoor ;-)
Leroy Boerefijn
Leroy Boerefijn
7 jaar geleden
 
0 +1 -0 -1
een error is toch ook data?? en je verwerkt het :)
maar ik zal het dan wel naar beginer zetten??
Frank -
Frank -
7 jaar geleden
 
0 +1 -0 -1
Lijkt me een goed plan. Deze functie is echt een beginnersfunctie. exit() of die() kunnen niet in een goed script staan, een script is gewoon niet goed met deze functies. Ongeacht de fout, moet de bezoeker altijd verder kunnen werken met de pagina's/functies die het wél doen. De bezoeker botweg met een kluitje het riet insturen is not done.
Wout van der Burg
Wout van der Burg
7 jaar geleden
 
0 +1 -0 -1
gebruik ipv exit() of die() de functie trigger_error(); zo kan het script doorlopen, zien de gebruikers de fout en kunnen ze indien mogelijk het script gebruiken
Frank -
Frank -
7 jaar geleden
 
0 +1 -0 -1
@Wout: trigger_error() heb je niet nodig, met een if-else krijg je een structuur die je veel beter in de hand kunt houden.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?
$query
= "SELECT * FROM tabelnaam";
$result = mysql_query($query);
if($result){ // query is gelukt
  // doe je ding

}
else {
  // query is mislukt, zet de fout in het logboek en geef een gebruikersvriendelijke foutmelding
}
?>

Dit kun je uiteraard ook oplossen met een OOP-aanpak, maar de basis (if-else) blijft hetzelfde.

Het nadeel van trigger_error() is dat deze min of meer onverwacht opduikt en niet voldoet aan de nette foutafhandeling die jij in gedachten hebt. Ondanks trigger_error() kun je heb je nog steeds een if nodig om te controleren of e.e.a. is goedgegaan.
Leroy Boerefijn
Leroy Boerefijn
7 jaar geleden
 
0 +1 -0 -1
maar als ik het nou bijv. echo..
dan krijg ik nog meer fouten omdat de dingen die met die foute query te maken hebben dan ook niet kunnen!

Edit:
ik heb het foutmelding gedeelte een beetje aangepast..
nu is het wat overzichtelijker :)

Om te reageren heb je een account nodig en je moet ingelogd zijn.

  • Labels
  • Geen tags toegevoegd.
Get Adobe Flash player