if-statement terwijl fopen wordt gebruikt

Status
Niet open voor verdere reacties.

JPeetje

Terugkerende gebruiker
Lid geworden
30 nov 2002
Berichten
2.540
hallow :)
ik zit ff met gastenboekje te prutsen en nou heb ik deze code:
PHP:
<?
fwrite(fopen("gastenboek.dat","a"),
"<hr width=100% color=white noshade size=1>\r
<font color=white face=verdana,arial size=1>\r
<b>Naam</b> <a href=\"mailto:".$_POST['email']."\">".$_POST['naam']."</a><br>\r
<b>Woonplaats</b> ".$_POST['woonplaats']."<br>\r
<b>Datum post:</b> ".date("d-m-Y H:i:s")."<br>\r");
fclose(fopen("gastenboek.dat","a"));
if($_POST['homepage'] != ""){
fwrite(fopen("gastenboek.dat","a"),
"<b>Homepage:</b> <a href=\"".$_POST['homepage']."\">".$_POST['homepage']."</a><br>\r");
fclose(fopen("gastenboek.dat","a"));
}else{
fwrite(fopen("gastenboek.dat","a"),
"<b>IP-adres:</b> ".$ipadres."<br>\r".$_POST['bericht']);
fclose(fopen("gastenboek.dat","a"));
}
?>
maar zoals je ziet, sluit ik gastenboek.dat en heropen ik hem weer voor de if-statement...
nou werkt dit wel leuk en alles, maar ben ik toch even benieuwd: is er een manier om een if-statement hier in te voegen zonder het bestand te sluiten ?
 
Tuurlijk wel, je kunt dat bestand best open laten alleen dan moet je het ff aan een var koppelen. Zoiets als:

$fp = fopen("bestand.dat", "a");

Want dan kun je IN de if de fwrite $fp als bestandsargument meegeven. Je verwijst dus naar dat wat buiten de if staat (ik hoor je denken, "o ja..." :D)...
 
np mate :). Het is trouwens ook beter als je dingen toewijst aan variabelen, niet functie(functie(arg, arg)). Niets verkeerds aan, maar het overzichtelijker als je het in stappen doet door de waarde die zo'n functie teruggeeft te koppelen aan een var. Je kunt er (zoals nu wel blijkt ;)) veel meer mee zo en bovendien is het ook netter.
 
jah, ik vind het handiger om gewoon alles in 1 keer te doen, zodat je d'r vanaf bent :D
maar met vars heb je wel wat meer mogelijkheden ja :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan