Beste mensen,

Inmiddels ben ik bezig om te proberen mijn eigen webserver te bouwen. Toch loop ik nu vast bij mijn registratieformulier. Uit de code zal blijken dat ik probeer zowel de input restrictie + ( de looks =P ) te behouden terwijl de knop het nog steeds doet.

Geneste formulieren werken in dit geval niet.. heeft iemand enig idee hoe ik dit wel voor elkaar kan krijgen?

Gok in de richting van een if-je voor de button, maar geen idee hoe ik dit op zou bouwen.

Bedankt voor ieder antwoord!

(code: <?php
//initiate connection
$link = mysql_connect("localhost","root");
if ($link == FALSE)
exit;
$db = mysql_select_db("server");
if (!$db)
exit;
//connected

if(!empty($_POST)){
$email = $_POST['email'];
$wachtwoord = $_POST['wachtwoord'];
$query = "SELECT * FROM members WHERE email='$email';";
$result = mysql_query($query, $link) or die("FOUT: ");
if(mysql_num_rows($result) > 0){
$tekst = "Dit";
die($tekst);
}
else{
$query="INSERT INTO members (email, wachtwoord) ";
$query .= "VALUES ('$email', '$wachtwoord');";
$result = mysql_query($query, $link) or die("FOUT: " .mysql_last_error."()");
$tekst = "bedankt voor uw aanmelding. <br /> u kunt nu <a href=\"login.php\">inloggen </a>";
die($tekst);
}
}

?>
<html><head><SCRIPT LANGUAGE="JavaScript">
function textCounter(field, countfield, maxlimit) {
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);

else
countfield.value = maxlimit - field.value.length;
}
</script></head>
<body>
<h2>registreren</h2>
welkom, u kunt zich hier registreren. Als inlognaam wordt u email adress gebruikt.
<hr/>

<!-- textCounter() parameters are: text field, the count field, max length -->
<form name="form123" action="<?php echo($_SERVER['PHP_SELF']);?>" method="post">

<font size="1" face="arial, helvetica, sans-serif"> ( You may enter up to 40 characters. )<br>
Email adress<input type="text" name=message wrap=physical cols=28 rows=4 action="YOUR-SCRIPT.CGI" onKeyDown="textCounter(this.form.message,this.form.remLen,40);" onKeyUp="textCounter(this.form.message,this.form.remLen,40);" />
<input readonly type=text name=remLen size=3 maxlength=3 value="40"> characters left</font>
<!-- next input -->
<br />
<font size="1" face="arial, helvetica, sans-serif"> ( You may enter up to 20 characters. )<br>
Wachtwoord: <input type="text" name=message wrap=physical cols=28 rows=4 action="YOUR-SCRIPT.CGI" onKeyDown="textCounter(this.form.message,this.form.remLen,20);" onKeyUp="textCounter(this.form.message,this.form.remLen,20);" />
<input readonly type=text name=remLen size=3 maxlength=3 value="20"> characters left</font>
<br />

<input type="submit" name="verzend" value="Registreer!" />

</form>
</body></html>

Hopend op een antwoord, en alvast hartelijk bedankt! :)

Groetjes,

Simolokid
code niet gelezen maar moet je niet hebben:


if(isset($_POST['submit'])){ 
//php code
}
else
{
// het formulier weergeven
}
Zag er veelbelovend uit... code omgebouwd - werkt nog steeds niet.. zeurt nog steeds om die .cgi, wat logisch is... krijg het gevoel dat het nog moeilijk wordt xP

wil je de code die ik dan nu heb of geloof je het wel? ^^
[email protected] schreef op 29.12.2009 15:24
.. zeurt nog steeds om die .cgi

Heb je dat bestand wel ergens staan?
Ik heb registratie.php, waar alle code instaat.. die open ik gewoon. Zonder die submit button, die ik dus wel nodig heb, doet javascript gewoon precies wat het moet doen, omdat die .cgi / javascript combi dan wél werkt. Nu een manier verzinnen hoe ik dus kan zorgen dat ze beide werken.
SanThe bedoelt denk ik of YOUR-SCRIPT.CGI wel bestaat in de map waar je registratie.php staat
Nee, zoals ik hierboven al heb gezegt. Dat script heb ik nergens staan, omdat zonder dat script ( wat er in zou staan.. geen idee, volgens mij wordt er alleen een functie aangeroepen die in de header staat) het ook gewoon werkt! alleen de button die zichzelf aanroept gooit alles in de soep... =[
als dat script nergens staat haal dan ook al de
action="YOUR-SCRIPT.CGI"
weg....

Dan kan hij sowieso daar niet meer over zeuren ;)
Dus wat jij zegt is eigenlijk, .cgi action is niet nodig, als ik nou gewoon die acties weghaal, en de 2 inputvelden + knop in 1 form zet wat zichzelf aanroept, dan zou het het moeten doen?.. interessant =P ga ik es even testen :)
Denk je ook aan sql-injection>
Nee, dat komt later wel =P alleen jou(martijn) suggestie wil (nog) niet werken.. het houd er nu helemaal mee op.. =/

als het beide tegelijk maar werkt

Reageren