gaat niet door JS heen

Status
Niet open voor verdere reacties.

Loith

Gebruiker
Lid geworden
15 dec 2010
Berichten
8
Hallo,

dit is mijn 2e probleem binnen 2 dagen. Ik snap totaal NIET waarom het niet werkt.
Het is hetzelfde als bij andere forms en JS die de forms checken en ik snap in dit geval niet waarom die niet werkt. Als ik de form in 1 keer uit laat voeren, zonder het JS te doorlopen, dan werkt het wel.

hier is de boosdoener:
PHP:
<?php
require_once 'DBconnect.php';

$id= $_GET['id'];

$result = mysql_query("SELECT *
FROM `bedrijven`
WHERE BedrijfsNr = '$id'");

while($row = mysql_fetch_array($result))
  {
  $naam     = $row['BedrijfsNaam'];
  $Plaats   = $row['BedrijfsPlaats'];
  $Adres    = $row['BedrijfsAdres'];
  $Mail     = $row['Email'];
  $Telefoon = $row['TelefoonNr'];
  $Contact  = $row['ContactPersoon'];
  $Postcode = $row['BedrijfsPostcode'];
  }
  ?>
  
<html>
<head>
<script type="text/javascript">
<!--
function geldig()
{
D = 1;
	if(document.klant.BedrijfsNaam.value == "")
	{
	D = 0;
	alert("U moet de bedrijfsnaam invullen.");
	}
	else if(document.klant.Wachtwoord.value != document.klant.Wachtwoord2.value)
			{
			D = 0;
			alert("De wachtwoorden komen niet overeen.");
			}
			else if(document.klant.Email.value == "")
			{
			D = 0;
			alert("U moet uw e-mailadres invullen.");
			}
			else if(document.klant.Email.value.indexOf("@") == -1 || document.klant.Email.value.indexOf(".") == -1)
				{
				D = 0;
				alert("Vul een geldig e-mailadres in a.u.b.");			
				}
			else if(document.klant.Email2.value == "")
			{
			D = 0;
			alert("U moet uw e-mailadres invullen.");
			}
			else if(document.klant.Email2.value.indexOf("@") == -1 || document.klant.Email2.value.indexOf(".") == -1)
				{
				D = 0;
				alert("Vul een geldig e-mailadres in a.u.b.");			
				}
			else if(document.klant.Email.value != document.klant.Email2.value)
			{
			D = 0;
			alert("De emailadressen komen niet overeen");
			}
		else if(document.klant.BedrijfsAdres.value == "")
		{
		D = 0;
		alert("U moet bedrijfsadres invullen.");
	}
		else if(document.klant.TelefoonNr.value.indexOf("0-9") == "")
			{
			D = 0;
			alert("U moet een telefoonnummer invoeren.");
			}
	else if(document.klant.ContactPersoon.value == "")
			{
			D = 0;
			alert("U moet de naam van de contactpersoon invullen.");
			}
	else if(document.klant.BedrijfsPlaats.value == "")
			{
			D = 0;
			alert("U moet de plaatsnaam waar het bedrijf staat invullen.");
			}
	else if(document.klant.BedrijfsPostcode.value == "")
	{
	D = 0;
	alert("U moet de postcode invullen.");
	}
	if(D == 1)
	{
	document.klant.submit();
	}
}
//-->
</script>
</head>
  
  <form name="klant" action="klantbijwerken.php" method="post">
    Bedrijfsnaam: <br />
    <input type="text" name="BedrijfsNaam" value="<?php echo $naam  ?>" /><br />
    Wachtwoord:<br />
    <input type="password" name="Wachtwoord" /><br />
    Nogmaals het Wachtwoord:<br />
    <input type="password" name="Wachtwoord2" /><br />
    E-mailadres:<br />
    <input type="text" name="Email" value="<?php echo $Mail  ?>"   /><br />
	Adres:<br />
    <input type="text" name="BedrijfsAdres" value="<?php echo $Adres ?>"  /><br />
	Telefoon Nummer: <br />
    <input type="text" name="TelefoonNr" value="<?php echo $Telefoon  ?>"  /><br />
	Contact Persoon:<br />
    <input type="text" name="ContactPersoon" value="<?php echo $Contact  ?>" /><br />
    Plaats:<br />
    <input type="text" name="BedrijfsPlaats" value="<?php echo $Plaats  ?>" /><br />
	Postcode:<br />
    <input type="text" name="BedrijfsPostcode" value="<?php echo $Postcode ?>" /><br />
	<br />
    <input type="button" value="Pas gegevens aan" onclick="geldig()"  />
	<?php echo "<br /><br /><a href='/implementatie/klantverwijder.php?id=" . $id . "'>Verwijderen </a>"; ?>
	<br /><br /><a href="/Implementatie/begin.php">Naar het begin</a>
</form>
</html>
Het is de bedoeling dat dmv de knop: "pas gegevens aan" de waarde vanuit de velden via de post naar volgende pagina gaan. Waar vervolgens een update zal worden uitgevoerd (als de waarde veranderd zijn).
 
Laatst bewerkt door een moderator:
Moet bij de onclick achter het aanroepen van de functie "geldig()" niet een punt-komma staan? Dus onclick="geldig();"
 
Heb je em ergens online staan om te testen? Wat gaat er precies mis?

(En kun je van method="post" eens method="POST" maken? Volgensmij is dat hoofdlettergevoelig namelijk)
 
Ik heb bij andere formpjes ook een JS lopen voor de velden, nergens heb ik er onclick="geldig();" altijd zonder de ;


ook heb ik post zonder hoofdletters bij andere formpjes.

Wat er precies mis gaat, is dat de knop van het formpje het niet doet zodra ik hem door JS probeer heen te lopen. Als ik zonder het JS doet, dan werkt het wel!


Werken online kan niet, ik heb het hier lokaal op de wamp 2.0 server.
 
Probeer de code nog eens uit te voeren. Als het goed is zie je linksonder in beeld het bekende gele driehoekje met een uitroepteken en daarachter de opmerking "Fout op pagina". Dubbelklik op het driehoekje en je ziet gelijk wat er fout gaat.
Je wilt namelijk op een tweede e-mailadres controleren maar hebt deze NIET in je form gedefinieerd.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan