De "Enter" toets is een probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Marc

Marc

05/07/2005 08:38:00
Quote Anchor link
Hoi,

Ik heb een probleem op mijn website.

Telkens iemand de enter toets indrukt terwijl hij een formulier invult denkt het programma dat het formulier is afgewerkt en verstuurd mag worden.

Ik heb gekeken bij "ISSET" maar naar ik begrijp wordt dit gebruikt als het formulier reeds verstuurd is.

Is er iemand die mij een oplossing of een tip kan geven?

Hieronder is 1 van die invulpagina's

<form action="postkode.php" method="post">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$server
= "localhost";
$user = "";
$pass = "";
$database = "plant";
$dbse = "land";
/* connectie naar mysql */
$dbh = mysql_connect($server,$user,$pass);
/* connectie met de database */
mysql_select_db($database,$dbh) or die('Database niet beschikbaar '.mysql_error());
$requete_sql = "select row_id,kode,naam,btwkd from ".$dbse." order by naam";
/* het resultaat opbouwen */
$query_result=mysql_query($requete_sql,$dbh);
echo "<center>Gelieve uw land te selecteren<br>";
echo('<select name="naam">');
while($option=mysql_fetch_array($query_result))
{

      echo('<option value = "'.$option['naam'].'">'.$option['naam'].'</option>');
}

echo('</select>');
echo "<br><br>";
echo "Postkode <input type='Text' name='postkode' size=3><br><br>";
?>

<input type="submit" value="Versturen"></center>

Met dank bij voorbaat.

Met vriendelijke groeten,

Marc
 
PHP hulp

PHP hulp

23/12/2024 03:20:32
 
Christian

christian

05/07/2005 08:53:00
Quote Anchor link
Ik keek er even naar, maar heb ik dislecktie of...
postkode schrijf je tog met een c??
 
Jelmer -

Jelmer -

05/07/2005 08:56:00
Quote Anchor link
Isset() kijkt of een veld bekend is, jij hebt empty() nodig, dat kijkt of een veld leeg is.

Misschien heb je iets aan hetvolgende (javascript)script:
http://www.dynamicdrive.com/dynamicindex16/disableenter.htm
 
Christian

christian

05/07/2005 09:13:00
Quote Anchor link
<form action="postkode.php" method="post" onkeypress="return handleEnter(this, event)">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$server
= "localhost";
$user = "";
$pass = "";
$database = "plant";
$dbse = "land";
/* connectie naar mysql */
$dbh = mysql_connect($server,$user,$pass);
/* connectie met de database */
mysql_select_db($database,$dbh) or die('Database niet beschikbaar '.mysql_error());
$requete_sql = "select row_id,kode,naam,btwkd from ".$dbse." order by naam";
/* het resultaat opbouwen */
$query_result=mysql_query($requete_sql,$dbh);
echo "<center>Gelieve uw land te selecteren<br>";
echo('<select name="naam">');
while($option=mysql_fetch_array($query_result))
{

      echo('<option value = "'.$option['naam'].'">'.$option['naam'].'</option>');
}

echo('</select>');
echo "<br><br>";
echo "Postkode <input type='Text' name='postkode' size=3><br><br>";
?>

<input type="submit" value="Versturen" onkeypress="return handleEnter(this, event)"></center>
^^ jou script (maar dan goed)

<script type="text/javascript">

/***********************************************
* Disable "Enter" key in Form script- By Nurul Fadilah([email protected])
* This notice must stay intact for use
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

function handleEnter (field, event) {
var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
if (keyCode == 13) {
var i;
for (i = 0; i < field.form.elements.length; i++)
if (field == field.form.elements)
break;
i = (i + 1) % field.form.elements.length;
field.form.elements.focus();
return false;
}
else
return true;
}

</script>
^^ tussenn de <head> tags neer zetten
Gewijzigd op 05/07/2005 09:15:00 door christian
 
Legolas

Legolas

05/07/2005 09:17:00
Quote Anchor link
christian:
Ik keek er even naar, maar heb ik dislecktie of...
postkode schrijf je tog met een c??


tis inderdaad postcode, dus je hoeft niet langs de huisarts voor een test :P
 
- Roland -

- Roland -

05/07/2005 09:57:00
Quote Anchor link
ik zou __tog__ ff naar huisarts gaan !
 
Marc

Marc

06/07/2005 11:22:00
Quote Anchor link
Hoi,
Bedankt christian voor de tip.
Maar ik heb het uitgeprobeerd en het werkt niet.
Vanaf als ik op een veld de "Enter" toets indruk gaat ie vanzelf naar de volgende pagina, terwijl dit maar zou mogen gebeuren wanneer er op de knop gedrukt wordt van "Versturen"

Hieronder vindt u het volledige programma.
Wat heb ik fout gedaan?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
session_start();
?>

<html>
<head>
<title>Leveranciersaccount aanmaken</title>
<script type="text/javascript">

/***********************************************
* Disable "Enter" key in Form script- By Nurul Fadilah([email protected])
* This notice must stay intact for use
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

function handleEnter (field, event) {
var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
if (keyCode == 13) {
var i;
for (i = 0; i < field.form.elements.length; i++)
if (field == field.form.elements)
break;
i = (i + 1) % field.form.elements.length;
field.form.elements.focus();
return false;
}
else
return true;
}

</script>
</head>
<body>
<herfst>
<img src="Aworld008.gif" border="0" width="60" height="60" <span></span><font style="font-size: 60pt">P</font><font size="5">lant</font><font style="font-size: 60pt"> A</font><font size="5">vailability</font><font style="font-size: 60pt"> S</font><font size="5">ervice</font><font style="font-size: 60pt"> S</font><font size="5">ystem</font>
<H3><U><center>Leveranciersaccount aanmaken pagina 1/3</center></U></H3>
<H5>
<form action="postkode.php" method="post" onkeypress="return handleEnter(this, event)">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$server
= "localhost";
$user = "";
$pass = "";
$database = "plant";
$dbse = "land";
/* connectie naar mysql */
$dbh = mysql_connect($server,$user,$pass);
/* connectie met de database */
mysql_select_db($database,$dbh) or die('Database niet beschikbaar '.mysql_error());
$requete_sql = "select row_id,kode,naam,btwkd from ".$dbse." order by naam";
/* het resultaat opbouwen */
$query_result=mysql_query($requete_sql,$dbh);
echo "<center>Gelieve uw land te selecteren<br>";
echo('<select name="naam">');
while($option=mysql_fetch_array($query_result))
{

      echo('<option value = "'.$option['naam'].'">'.$option['naam'].'</option>');
}

echo('</select>');
echo "<br><br>";
echo "Postcode <input type='Text' name='postkode' size=3><br><br>";
?>

</form>
<center><input type="submit" value="Versturen" onkeypress="return handleEnter(this, event)"></center>

</H5>
</herfst>
</body>
</html>

Met vriendelijke groeten,

Marc
 
Jelmer -

Jelmer -

06/07/2005 11:26:00
Quote Anchor link
onkeypress="return handleEnter(this, event)" moet je niet aan de submitbutton vastmaken, maar aan de input-elementen.

echo "Postcode <input type='Text' name='postkode' size=3><br><br>";
wordt dus
echo "Postcode <input type='Text' name='postkode' size=3 onkeypress=\"return handleEnter(this, event)\"><br><br>";

en
<select name="naam">
wordt dus
<select name="naam" onkeypress="return handleEnter(this, event)">
 
Elwin - Fratsloos

Elwin - Fratsloos

06/07/2005 12:09:00
Quote Anchor link
ruud:
ik zou __tog__ ff naar huisarts gaan !
Oké, als die niet expres was, dan moet jjij mee...

Elwin
 
Marc

Marc

06/07/2005 15:51:00
Quote Anchor link
hoi,

Bedankt Jelmer
je uitleg is de juiste.

Daarmee is mijn probleem opgelost

Tot later

Marc
Gewijzigd op 06/07/2005 18:38:00 door Marc
 
Marien xD

Marien xD

06/07/2005 19:45:00
Quote Anchor link
of je maakt een normale button met een javascriptje onclick="form.submit()" werkt veel sneller :)
 
Jelmer -

Jelmer -

07/07/2005 09:06:00
Quote Anchor link
@Marien, aangezien 10% (of meer) van de internettende internetters Javascript uit heeft staan (denken dat het veiliger is, rare lui) zal het forumulier niet meer verzenden.

Sterker nog, nu ik net bedenk, als ik die pagina bekijk op mijn pocketPc bekijk, zal hij het formulier ook niet willen verzenden. PocketIE kan namelijk niet goed javascript. (maar opent ook niet de content die tussen <noscript> staat, oftewel: totaal hopeloos programma!)
 
Han eev

Han eev

07/07/2005 09:38:00
Quote Anchor link
Moeten ze FireFox voor pocket Pc uitvinden ^^.
 
Jelmer -

Jelmer -

07/07/2005 10:02:00
Quote Anchor link
Zijn ze mee bezig, heet minimo, maar ik heb een beeldscherm van 640x480 en een speciale videochipset. En Minimo is gemaakt voor 320x240 (dus het ziet er niet uit) en daarbij omdat het mijn grafische chipset niet gebruikt ook nog eens heel sloom met renderen van pagina's.
Maar gelukkig is dit nog maar versie Alfa 0.006, dus bij versie 0.1 doet alles het vast zoals het moet ^^,
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.