ik ben bezig met het formulier zoals deze hier is gepost op de site. Nou wil ik van de submit button een tekstlink maken. Heeft een van jullie een idee hoe dit kan?

Dit is mij huidige code:

<?
// geef e-mail adres op van ontvanger
$mail_ontv = "***@Hotmail.com";

// is niet 100% !!!
function checkmail($mail)
{
$email_host = explode("@", $mail);
$email_host = $email_host['1'];
$email_resolved = gethostbyname($email_host);

if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail))
$valid = 1;

return $valid;
}

// als er niet op submit is gedrukt, of als er wel op is gedrukt maar niet alles ingevoerd is
if (!$_POST['submit'] || $_POST['submit'] && (!$_POST['bedrijfsnaam'] || !$_POST['contactpersoon'] ||!$_POST['mail'] ||
!checkmail($_POST['mail']) ))
{
if ($_POST['submit'] && (!$_POST['bedrijfsnaam'] || !$_POST['contactpersoon']|| !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] ))
{
echo "Je bent je bedrijfsnaam, e-mail adres, onderwerp of bericht vergeten in te vullen. Ook kan het zijn ";
echo "dat je een verkeerd e-mail adres hebt ingevuld.<p>";
}
?>
<h1>Contactformulier</h1>
<p>&#160;</p>
<p class="inleiding">Vul het formulier in of maak gebruik van de contactgegevens hiernaast, dan neem ik zo snel mogelijk contact met u op</p><br />

<?
// form + tabel
echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
echo "<form method=\"POST\" ACTION=\"" . $_SERVER['PHP_SELF'] . "\">";

// bedrijfsnaam
echo "<tr><td width=\"60\"><p>Bedrijfsnaam*:</p></td><td><input type=\"text\" name=\"bedrijfsnaam\" value=\"" . $_POST['bedrijfsnaam'] . "\"></td></tr>";

// space
echo "<tr><td height=\"2\"></td><td height=\"2\"></td></tr>";


// contactpersoon
echo "<tr><td><p>Contactpersoon*:</p></td><td><input type=\"text\" name=\"contactpersoon\" value=\"" . $_POST['contactpersoon'] . "\"></td></tr>";

// space
echo "<tr><td height=\"2\"></td><td height=\"2\"></td></tr>";

// adres
echo "<tr><td><p>Adres:</p></td><td><input type=\"text\" name=\"adres\" value=\"" . $_POST['adres'] . "\"></td></tr>";

// space
echo "<tr><td height=\"2\"></td><td height=\"2\"></td></tr>";

// postcode
echo "<tr><td><p>Postcode:</p></td><td><input type=\"text\" name=\"postcode\" value=\"" . $_POST['postcode'] . "\"></td></tr>";

// space
echo "<tr><td height=\"2\"></td><td height=\"2\"></td></tr>";

// plaats
echo "<tr><td><p>Plaats:</p></td><td><input type=\"text\" name=\"plaats\" value=\"" . $_POST['plaats'] . "\"></td></tr>";

// space
echo "<tr><td height=\"7\"></td><td height=\"15\"></td></tr>";


// telefoonnummer
echo "<tr><td><p>Telefoonnummer:</p></td><td><input type=\"text\" name=\"telefoonnummer\" value=\"" . $_POST['telefoonnummer'] . "\"></td></tr>";

// space
echo "<tr><td height=\"2\"></td><td height=\"2\"></td></tr>";

// mail
echo "<tr><td><p>Emailadres*:</p></td><td><input type=\"text\" name=\"mail\" value=\"" . $_POST['mail'] . "\"></td><td>&nbsp;</td></tr>";

// space
echo "<tr><td height=\"2\"></td><td height=\"2\"></td></tr>";

// website
echo "<tr><td><p>Website:</p></td><td><input type=\"text\" name=\"website\" value=\"" . $_POST['website'] . "\"></td></tr>";

// space
echo "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>";

// bericht
echo "<tr><td><p>Bericht:</p></td><td>&nbsp;</td></tr>";
echo "<tr><td colspan=\"2\"><TEXTAREA name=\"msggs\" ROWS=\"4\" COLS=\"40\">" . htmlentities($_POST['msggs']) . "</TEXTAREA></td></tr>";



// space
echo "<tr><td colspan=\"2\"><p class=\"bijschrift\">Velden met een * zijn verplicht </p></td></tr>";

// button
echo "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>";
echo "<tr><td><input type=\"submit\" name=\"submit\" value=\"Versturen\"></td><td>&nbsp;</td></tr>";


// Onderwerp contactformulier
echo "<tr><td></td><td><input type=\"HIDDEN\" name=\"onderwerp\" value=\"" . $_POST["telefoonnummer"] . "\"></td></tr>";


// sluit form + tabel
echo "</form>";

echo "</table>";

}


// versturen naar
else
{
// set datum
$datum = date("d.m.Y H:i");

// set ip
$ip = $_SERVER['REMOTE_ADDR'];

$inhoud_mail = "===================================================\n";
$inhoud_mail .= "Ingevulde contact formulier\n";
$inhoud_mail .= "===================================================\n\n";

$inhoud_mail .= "bedrijfsnaam: " . $_POST['bedrijfsnaam'] . "\n";
$inhoud_mail .= "E-mail adres: " . $_POST['mail'] . "\n";
$inhoud_mail .= "Bericht:\n";
$inhoud_mail .= $_POST['msggs'] . "\n\n";

$inhoud_mail .= "Verstuurd op $datum via het ip " . $ip . "\n\n";

$inhoud_mail .= "===================================================\n\n";

// --------------------
// spambot protectie
// ------
// van de tutorial: http://www.phphulp.nl/php/tutorials/10/340/
// ------

$headers = "From: " . $_POST['bedrijfsnaam'] . " <" . $_POST['mail'] . ">";

$headers = stripslashes($headers);
$headers = str_replace("\n", "", $headers); // Verwijder \n
$headers = str_replace("\r", "", $headers); // Verwijder \r
$headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes



$_POST['onderwerp'] = str_replace("\n", "", $_POST['onderwerp']); // Verwijder \n
$_POST['onderwerp'] = str_replace("\r", "", $_POST['onderwerp']); // Verwijder \r
$_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes

mail($mail_ontv, $_POST['onderwerp'], $inhoud_mail, $headers);
echo "<h1>Dank u wel!</h1><br />";
echo "<p>Uw bericht is verzonden. U krijgt zo snel mogelijk een reactie.</p><br />";


echo "<p>Klik <a href=\"index.php\">hier</a> om terug te keren naar de homepage.</p>";







}
?>

Geef je form een id, bijv id="my_form". Geef je tekstlink een id, bijv id="my_link".
Doe dan in de head sectie van je pagina:

<script type="text/javascript">
function init () {
    document.getElementById ('my_link').onclick = function () {
        document.getElementById ('my_form').submit ();
        return false;
    }
}
window.onload = init;
</script>
Maar in dit formulier kan ik toch geen href plaatsen omdat de pagina naar zich zelf verwijst?
Ik gebruik dit, maar dan werkt het niet.

<a id="my_link" href="void(0);">verstuur</a>
kan iemand me helpen? ik zou gewoon een formulier willen dat ik met een submit-knop in men mailbox kan laten komen ? Kan dit met ev. een php script ?
@ sander: daarvoor moet je even een eigen topic openen.

Reageren