Ga naar inhoud

$PHP_SELF werkt niet ???


Aanbevolen berichten

Onderstaande code heb ik letterlijk uit een boek overgenomen: [code:1:ff8b8942b1] </HEAD> <BODY> <?php if(!IsSet($stage)) { ?> <P>Please fill out the form below to submit your title, name and email adress.</P> <FORM METHOD="POST" ACTION="<?php print('$PHP_SELF')?>" > Title:<BR> <INPUT TYPE = RADIO NAME="Title" VALUE=1>Mr.<BR> <INPUT TYPE = RADIO NAME="Title" VALUE=2>Ms.<BR> Given name: <INPUT TYPE=TEXT NAME="GivenName" SIZE=25><BR> Family name: <INPUT TYPE=TEXT NAME="FamilyName" SIZE=25><BR> E-mail adress: <INPUT TYPE=TEXT NAME="Email" SIZE=25><BR> <INPUT TYPE=HIDDEN NAME="stage" VALUE=1> <INPUT TYPE=SUBMIT> </FORM> <?php } else { mysql_connect("localhost", "gebruiker", "pw") or die("failure to communicate with database"); mysql_select_db("phpbook"); $query = "INSERT INTO adressbook (ID, Title, GivenName, FamilyName, Email) VALUES('NULL', '$GivenName', '$FamilyName', '$Email'); $result - mysql_query($query); if($result -- 0) print("There's been a problem."); else print("Your information has been recorded."); } ?> </BODY> </HTML> [/code:1:ff8b8942b1] Wanneer ik op de submit-knop klik krijg ik een melding dat de pagina niet gevonden kan worden. Je kunt de pagina bekijken op www.capady.nl/boek355.html De ingevoerde gegevens voor usernaam en paswoord zijn niet correct maar dan zou ik op zijn minst de foutmelding uit het script moeten krijgen en niet de melding dat de pagina niet bestaat. Zelf heb ik het sterke vermoeden dat het probleem ergens bij het action deel zit van de FORM declaratie ik zi alleen even niet precies wat nu het probleem is. Wie kan mij vertellen waar het foutje zit ? Alvast bedankt, John
Link naar reactie
PHP moet door de server uitgevoerd worden. Aangezien je de pagina nu als .html opgeslagen hebt en niet als .php voert hij helemaal geen PHP uit. De action is nu "<?php print($PHP_SELF)?> in het HTML document, als PHP het nu uitgevoerd had was dat netjes de pagina zelf geweest... Dus ff renamen naar boek355.php en dan zou het moeten werken..
Link naar reactie
Oke, ik geloof dat ik het nog niet helemaal onder de knie heb :-( Nadat ik het bestand had gerenamend naar een PHP bestand werkte het inderdaad wel, maar ik zou zoiets eigenlijk heel graag zelf willen zien ipv dat jullie het voor me moeten zien. Door de HTML statements waar de listing mee begon ben ik er eigenlijk voetstoots van uit gegaan dat het een HTML listing was maar hoe zie je nu dat onderscheid ? Wie kan mij dat duidelijk uitleggen ? Alvast bedankt, John
Link naar reactie
Zoals ik in mijn post schreef wordt PHP door de server uitgevoerd. PHP maakt als het ware zelf HTML pagina's. Dat voert je eigen computer niet uit.. Het flexibele van PHP is dat je het gewoon in HTML kunt invoeren en makkelijk kunt switchen. Net zoals in de code die jij gebruikt. Als je dus <? ... ?> of <?php ... ?> in je pagina hebt staan moet de pagina als .php opgeslagen zijn, wil PHP wat kunnen doen. Dat komt omdat de extensie .php ervoor zorgt dat de webserver het bestand als een php bestand ziet en het dus door de php parser haalt (dat zorgt ervoor dat alles afgehandeld wordt..). Zolang je dus nog .html gebruikt wordt het bestand gelijk verstuurd, zonder tussenkomst van die parser.. In je pagina wordt alles tussen de PHP tags dus uitgevoerd door PHP en wordt er gezorgd dat de aangepaste code weer naar de browser verstuurd wordt. Ik hoop dat het zo duideijker voor je is..
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...