ik ben een beginner met php, heb een mail script hier afgehaald en het opgeslagen als mail.php. maar hoe krijg ik nu op een andere html pagina het script te zien?
het script qua code, of het script die uitgevoerd is?

je vraagstelling is onduidelijk, evenals je doel.
Je plaats het stuk html code voor het formulier op de plek waar je het wilt. Dan zorg je dat wanneer er op submit geklikt is dat het formulier linkt naar mail.php via form action.
edit: even te snel getypt. form heeft een action niet een submit veld :p

zoek op form action post en $_POST['']
met naam geef je de input aan

bvb html:

<form action="verwerken.php">
<table>
<tr>
<td>Vul je email in</td>
<td> <input type="text" name="email" ></td>
</tr>
<tr>
<td><input type="submit" name="toevoegen" value="knopje">
</td>
</tr>
</table>
</form>

en het verwerken.php bestand.

<?php
if(!empty($_POST))
{
echo "Dit is je email:".$_POST['email']." tof? <br/> Nee niet echt :p maar wel een begin!";
}
?>


haal je het er weer uit :) als je het in een database wil zetten en verder wil gebruiken moet je alweer een stapje verder ^^ maarje komt ervanzelf :).

Tip: met echo var_dump($_POST); kun je controleren welke namen er in zitten. nu hebben we bvb email maar het kan soms ook anders zijn dan je dacht ;)

en specifiek over jou script?

geen idee! te weinig informatie!:P
Jasper Lankhorst schreef op 05.07.2009 23:02
edit: even te snel getypt. form heeft een action niet een submit veld :p

zoek op form action post en $_POST['']
met naam geef je de input aan

bvb html:

<form action="verwerken.php">
<table>
<tr>
<td>Vul je email in</td>
<td> <input type="text" name="email" ></td>
</tr>
<tr>
<td><input type="submit" name="toevoegen" value="knopje">
</td>
</tr>
</table>
</form>

en het verwerken.php bestand.

<?php
if(!empty($_POST))
{
echo "Dit is je email:".$_POST['email']." tof? <br/> Nee niet echt :p maar wel een begin!";
}
?>


haal je het er weer uit :) als je het in een database wil zetten en verder wil gebruiken moet je alweer een stapje verder ^^ maarje komt ervanzelf :).

Tip: met echo var_dump($_POST); kun je controleren welke namen er in zitten. nu hebben we bvb email maar het kan soms ook anders zijn dan je dacht ;)

en specifiek over jou script?

geen idee! te weinig informatie!:P


1. geef <form> een method mee, anders wordt het als $_GET[] verzonden en niet als $_POST[].
2. controleer d.m.v. if($_SERVER['REQUEST_METHOD'] == 'POST') i.p.v. if(!empty($_POST))
3. [php]var_dump[/php] geeft al uit zichzelf output, dus is echo totaal overbodig...
4. [php]print_r[/php] werkt net zo goed...

Ontopic:

kijk eens op W3Schools. daar staan een paar hele nuttige tutorials over verschillende talen op.
Nog even een stapje verder; dit is iets wat je nu nog niks zegt maar iets wat je beter vanaf het begin kunt weten; de mail() functie van PHP is nogal slecht... gebruik liever iets als [google]swiftmailer[/google]
Ivo schreef op 05.07.2009 23:46
[quote='Jasper Lankhorst schreef op 05.07.2009 23:02']edit: even te snel getypt. form heeft een action niet een submit veld :p

zoek op form action post en $_POST['']
met naam geef je de input aan

bvb html:

<form action="verwerken.php">
<table>
<tr>
<td>Vul je email in</td>
<td> <input type="text" name="email" ></td>
</tr>
<tr>
<td><input type="submit" name="toevoegen" value="knopje">
</td>
</tr>
</table>
</form>

en het verwerken.php bestand.

<?php
if(!empty($_POST))
{
echo "Dit is je email:".$_POST['email']." tof? <br/> Nee niet echt :p maar wel een begin!";
}
?>


haal je het er weer uit :) als je het in een database wil zetten en verder wil gebruiken moet je alweer een stapje verder ^^ maarje komt ervanzelf :).

Tip: met echo var_dump($_POST); kun je controleren welke namen er in zitten. nu hebben we bvb email maar het kan soms ook anders zijn dan je dacht ;)

en specifiek over jou script?

geen idee! te weinig informatie!:P


1. geef <form> een method mee, anders wordt het als $_GET[] verzonden en niet als $_POST[].
2. controleer d.m.v. if($_SERVER['REQUEST_METHOD'] == 'POST') i.p.v. if(!empty($_POST))
3. [php]var_dump[/php] geeft al uit zichzelf output, dus is echo totaal overbodig...
4. [php]print_r[/php] werkt net zo goed...[/quote]

1 is een kwestie van luiheid :p
2. en waarom if($_SERVER['REQUEST_METHODE'] == 'POST) boven empty?
3,4 var_dump geeft niet altijd uitzichzelf output, vaak meegemaakt van niet :p en ja het kan net zo goed print_r :)
@Jasper;

1. het loont niet om lui te zijn wanneer je iemand helpt. En zeker niet als degene in kwestie net is begonnen met php.
3. var_dump geeft als het goed is altijd output !
Ivo schreef op 05.07.2009 23:57
@Jasper;

1. het loont niet om lui te zijn wanneer je iemand helpt. En zeker niet als degene in kwestie net is begonnen met php.
3. var_dump geeft als het goed is altijd output !


ok, ook een beetje moeheid ook ^^;; .

Dagje bezig om uit te vogelen dat uit eindelijk de connect van mn server verrot is. beetje vemoeid :p.

zal de volgende keer beter opletten :).
PHP.net over var_dump:

"Tip

As with anything that outputs its result directly to the browser, the output-control functions can be used to capture the output of this function, and save it in a string (for example)."


"This function displays structured information about one or more expressions that includes its type and value. "
if($_SERVER['REQUEST_METHODE'] == 'POST) is niet altijd voldoende. Stel je hebt links op je pagina een <form> met registreren en rechts een <form> met inloggen.

Als je dan op je registreer pagina en op je inlog pagina if($_SERVER['REQUEST_METHODE'] == 'POST) hebt staan, en er wordt bij het registreren op submit gedrukt, dan zal hij ook het inloggen meenemen, wat je dus niet wilt. Daarom zou je je submit knop van zowel inloggen als registreren een name moeten geven en dan bij je if($_SERVER['REQUEST_METHODE'] == 'POST) nog een statement erbij om te checken wat er nou verzonden is dmv isset(). Dus waarom niet alleen die isset()?
@Marcel, dat maakt niks uit. Beide formulieren zullen een andere action hebben normaal gesproken. Als het login form wordt verzonden gaat ie dus naar de pagina die het inloggen verwerkt, en als je een zoekformulier op diezelfde pagina zou verzenden zal die naar de pagina met de zoekresultaten gaan.

Btw, het is REQUEST_METHOD, niet REQUEST_METHODE

Reageren