Bij die() stopt script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

AstroVersum

AstroVersum

23/12/2008 09:52:00
Quote Anchor link
Hallo,

Als ik in mijn script een die() krijg, dan loopt de script daaronder niet meer door en eindigt dan met de foutmelding tussen de haakjes. Het gebeurd bij elke die(). Hoe kan ik dit oplossen?
Gewijzigd op 01/01/1970 01:00:00 door AstroVersum
 
PHP hulp

PHP hulp

22/12/2024 07:40:38
 
Frank -

Frank -

23/12/2008 09:54:00
Quote Anchor link
Goh, dat is vreemd, hoe zou dat nou kunnen?

Ooit wel eens de php-handleiding doorgelezen???
 

23/12/2008 09:56:00
Quote Anchor link
www.php.net/die
Quote:
This language construct is equivalent to exit()

www.php.net/exit
Quote:
Output a message and terminate the current script

Ofwel: die() stopt je script.
 
Tikkes C

Tikkes C

23/12/2008 09:58:00
Quote Anchor link
oplossing:

bouw een foutafhandeling in zonder die() of exit()
 
AstroVersum

AstroVersum

23/12/2008 09:59:00
Quote Anchor link
Maar als ik daaronder met een nieuwe php begin tussen de
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php ?>
wordt dat ook niet uitgevoerd. Hoe kan ik dat nog laten uitvoeren? De script stopt en is oke, maar een andere script..

Tikkes schreef op 23.12.2008 09:58:
oplossing:

bouw een foutafhandeling in zonder die() of exit()


Een idee wat?
Gewijzigd op 01/01/1970 01:00:00 door AstroVersum
 
Tikkes C

Tikkes C

23/12/2008 10:03:00
Quote Anchor link
die() eindigt het script, dus alles wat eronder komt zal NIET uitgevoerd worden!

doe:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?PHP

if(empty($row)) {

//FOUTAFHANDELING

}

?>
 
Dennis Mertens

Dennis Mertens

23/12/2008 10:04:00
Quote Anchor link
Met die stop je gewoon je code, klaar.

Je moet dan gewoon met een if-statement werken of iets dergelijks.

Iig niet die of exit gebruiken.

Als je even de moeite had genomen, en je hoeft niet eens te zoeken die() wist je het.

Nu snap ik niet waarom er gevorderd als schrift bij jou staat, spiet mie donders.
 

23/12/2008 10:04:00
Quote Anchor link
exceptions

Als je een stuk verder in je document weer
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php doet is dit geen nieuw script. Het is een ander deel uit hetzelfde script.

//Twee mensen waren me voor, maar ja.
@DM: dat komt door het aantal posts... zegt helaas niks over de gebruiker zelf.
Gewijzigd op 01/01/1970 01:00:00 door
 
Hipska BE

Hipska BE

23/12/2008 10:06:00
Quote Anchor link
jij kan toch ook niet meer verder wandelen als je dood bent? :p Wel, php ook niet.
 
Dennis Mertens

Dennis Mertens

23/12/2008 10:08:00
Quote Anchor link
Mathijs schreef op 23.12.2008 10:04:
@DM: dat komt door het aantal posts... zegt helaas niks over de gebruiker zelf.
Weet het. Maar nog snap ik het niet :)
Gewijzigd op 01/01/1970 01:00:00 door Dennis Mertens
 
Tikkes C

Tikkes C

23/12/2008 10:09:00
Quote Anchor link
blijf wel vriendelijk...we zijn hier om te helpen, niet om te beledigen.
 
Dennis Mertens

Dennis Mertens

23/12/2008 10:17:00
Quote Anchor link
Hey hey, ik zeg ook spiet mie donders. Bedoelde het niet als belediging.

Maar ik vind (zoals wel vaker) dat deze jonge man niet de moeite heeft genomen om zelf het probleem te achter halen.
 
Tikkes C

Tikkes C

23/12/2008 10:17:00
Quote Anchor link
mee eens ;-)
 
Erwin Geen

Erwin Geen

23/12/2008 10:19:00
Quote Anchor link
In plaats van
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
die('Invalid query: ' . mysql_error());
?>

kan je
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo 'Invalid query: ' . mysql_error();
?>
gebruiken.
Dan gaat het script wel verder.
Gewijzigd op 01/01/1970 01:00:00 door Erwin Geen
 
AstroVersum

AstroVersum

23/12/2008 10:19:00
Quote Anchor link
Dennis Mertens schreef op 23.12.2008 10:17:
Hey hey, ik zeg ook spiet mie donders. Bedoelde het niet als belediging.

Maar ik vind (zoals wel vaker) dat deze jonge man niet de moeite heeft genomen om zelf het probleem te achter halen.


Ik dacht dat die alleen alles binnen die zelfde script afhaakte en niet ook een nieuwe script daaronder.
 
Tikkes C

Tikkes C

23/12/2008 10:20:00
Quote Anchor link
zoals hij al zei:
nieuwe php tags leiden geen nieuw script in maar een vervolg.
 
Dennis Mertens

Dennis Mertens

23/12/2008 10:21:00
Quote Anchor link
Warchief schreef op 23.12.2008 10:19:
In plaats van
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
die('Invalid query: ' . mysql_error());
?>

kan je
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo 'Invalid query: ' . mysql_error();
?>
gebruiken.
Dan gaat het script wel verder.
Want?

Je query heeft een fout gemaakt!!
Dat wil je afkappen, en waarschijnlijk niet doorgaan!

Als je tegen een boom rijdt, denk je ach wat jammer, maar we rijden verder? Nee eerst kijken naar de schade :)
 
Rens nvt

Rens nvt

23/12/2008 10:24:00
Quote Anchor link
Dennis Mertens schreef op 23.12.2008 10:21:
Als je tegen een boom rijdt, denk je ach wat jammer, maar we rijden verder? Nee eerst kijken naar de schade :)

Ik zou eerst proberen uit te stappen....... ;-)

Serieus: error? da's balen, kunnen we dit oplossen? Nee, stoppen, ja => doorgaan...

Wat betreft het hele scripts verhaal: die() stopt je script niet! die() stopt het parsen van je volledige PHP request, dus de file die je aanroept, alle includes, alle requires, alle, alle, alle, alle zaken... Zo, en nu is't duidelijk :D
Gewijzigd op 01/01/1970 01:00:00 door Rens nvt
 
Dennis Mertens

Dennis Mertens

23/12/2008 10:26:00
Quote Anchor link
Ik zou eerst een auto moeten kopen...
Agja :)

Maar ook ga je geen mysql_error zomaar op je scherm gooien. Wil je je bezoekers daarmee lastig vallen?
 
AstroVersum

AstroVersum

23/12/2008 10:30:00
Quote Anchor link
Dennis Mertens schreef op 23.12.2008 10:26:
Maar ook ga je geen mysql_error zomaar op je scherm gooien. Wil je je bezoekers daarmee lastig vallen?

Maar anders krijg je alleen lay-out op de pagina. Het is beter te laten zien dat er iets mis is gegaan en dat ze een refresh moeten doen.
Gewijzigd op 01/01/1970 01:00:00 door AstroVersum
 
Tikkes C

Tikkes C

23/12/2008 10:32:00
Quote Anchor link
kijk het is simpel:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?PHP

// veel code

or die();

// ook veel code maar deze wordt niet uitgevoerd.
//indien die wordt aangeroepen.


?>


gebruik if statements om connectie etc te bekijken en een foutafhandeling in te voeren. (of maak gewoon alles meteen goed)
Gewijzigd op 01/01/1970 01:00:00 door Tikkes C
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.