?
Onbekende gebruiker
02-09-2005 11:25
Ik zie hier een foutje
Email: /td>\n<td class=\"td\">\n
Dit moet zijn:
Email: </td>\n<td class=\"td\">\n
Link gekopieerd
elseif(!eregi("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+", $_POST[cp_email])) {
maak daarvan:
elseif(!eregi("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+", $_POST['cp_email'])) {
dus quotes in de POST..
Link gekopieerd
?
Onbekende gebruiker
02-09-2005 11:32
Sorry was de uitleg vergeten, maar ik denk dat je het zelf al weet.
De tag moet altijd beginnen met < en eindigen op >.
Het is trouwens ontzettend onduidelijk met al die \", maar dat vind ik persoonlijk lastig. Je kan ook met dubbele en enkele quotes werken.
Dus in plaats van:
$form .= "<tr>\n<td class=\"td\">";
Kan je ook dit doen:
$form .= "<tr>\n<td class='td'>";
Als je dit verder doorvoert, dan maakt het een stuk overzichtelijker.
Ik gebruik alleen de \ als het echt moet.
Succes
Link gekopieerd
?
Onbekende gebruiker
02-09-2005 11:38
Ik zie dat
Email /td> naar Email </td>
2x verbetert moet worden
Want het staat er 2 keer in
Link gekopieerd
N
Nancy
02-09-2005 11:40
gewijzigd op 02-09-2005 11:45
Mmm klopt ook niet, want als ik dan op de button controleer druk is opeens m'n e-mail veld weg. Terwijl ik helemaal niets heb ingevuld daar :S
Heb nu onderstaand gebeuren.
<?php
if (isset($_POST["cp_email"]) && $_POST["cp_email"] <> "") {
$form .= "<tr>\n<td class=\"td\">\n Email: </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" value=\"" . $_POST["cp_email"] . "\" /></td>\n</tr>\n";
} elseif(!eregi("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+", $_POST['cp_email'])) {
echo "Email adres onjuist";
} else {
$error = "ja";
$form .= "<tr>\n<td class=\"td\">\n<b>Geen emailadres ingevuld</b><br /> Email </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" /></td>\n</tr>\n";
}
?>
Link gekopieerd
?
Onbekende gebruiker
02-09-2005 12:01
Dat komt omdat je de check op de onjuiste plek hebt staan.
Als het emailadres onjuist is, dan zie je alleen de tekst Email adres onjuist.
Maar verder staat er niks in die elseif. Dus vandaar dat je je email invoervak kwijt bent.
Je kan het zo doen:
<?php
if (isset($_POST["cp_email"]) && $_POST["cp_email"] <> "") {
$form .= "<tr>\n<td class=\"td\">\n Email: </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" value=\"" . $_POST["cp_email"] . "\" /></td>\n</tr>\n";
} elseif(!eregi("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+", $_POST['cp_email'])) {
echo "Email adres onjuist";
$form .= "<tr>\n<td class=\"td\">\n<b>Geen emailadres ingevuld</b><br /> Email </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" /></td>\n</tr>\n";
} else {
$error = "ja";
$form .= "<tr>\n<td class=\"td\">\n<b>Geen emailadres ingevuld</b><br /> Email </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" /></td>\n</tr>\n";
}
?>
Dit is trouwens nog een omslagtige manier. Je kan het veeeeeeel korter maken. Maar ik doe het even zo.
Link gekopieerd
N
Nancy
02-09-2005 12:07
gewijzigd op 02-09-2005 12:10
werkt ook niet, want nu checkt hij dus niet op op het geldig( @ .) emailadres is. Hij checkt nu alleen op of het veld leeg is of niet
Pff hoezo ingewikkeld :S
Link gekopieerd
?
Onbekende gebruiker
02-09-2005 12:16
Ja ik zie het.
Ik had de verkeerde tekst overgehaald.
ipv
<?php
} elseif(!eregi("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+", $_POST['cp_email'])) {
echo "Email adres onjuist";
$form .= "<tr>\n<td class=\"td\">\n<b>Geen emailadres ingevuld</b><br /> Email </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" /></td>\n</tr>\n";
}
?>
is het
<?php
} elseif(!eregi("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+", $_POST['cp_email'])) {
echo "Email adres onjuist";
$form .= "<tr>\n<td class=\"td\">\n Email: </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" value=\"" . $_POST["cp_email"] . "\" /></td>\n</tr>\n";
}
?>
Link gekopieerd
- SanThe -
02-09-2005 12:20
gewijzigd op 02-09-2005 12:23
Barman schreef op 02.09.2005 12:01
Dit is trouwens nog een omslagtige manier. Je kan het veeeeeeel korter maken. Maar ik doe het even zo.
<?php
if (isset($_POST["cp_email"]) && eregi("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+", $_POST['cp_email']))
{
$foutje="";
}
else
{
$error = "ja";
$foutje="<b>Geen of ongeldig emailadres ingevuld</b><br />";
}
$form .= "<tr>\n<td class=\"td\">\n" . $foutje . " Email: </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" value=\"" . $_POST["cp_email"] . "\" /></td>\n</tr>\n";
?>
Dit zou ook moeten werken en is een heel stuk korter.
Link gekopieerd
N
Nancy
02-09-2005 12:23
gewijzigd op 02-09-2005 12:24
Sorry maar werkt nog steeds niet. Hij checkt nu zelfs niet meer of het veld leeg is ja of nee.
Heeft het nies met die echo te maken? Ik gil maar wat hoor.
Hier m'n hele script
<?php
if (isset($_POST["cp_email"]) && $_POST["cp_email"] <> "") {
$form .= "<tr>\n<td class=\"td\">\n Email: </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" value=\"" . $_POST["cp_email"] . "\" /></td>\n</tr>\n";
} elseif(!eregi("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+", $_POST['cp_email'])) {
echo "Email adres onjuist";
$form .= "<tr>\n<td class=\"td\">\n Email: </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" value=\"" . $_POST["cp_email"] . "\" /></td>\n</tr>\n";
} else {
$error = "ja";
$form .= "<tr>\n<td class=\"td\">\n<b>Geen emailadres ingevuld</b><br /> Email </td>\n<td class=\"td\">\n<input type=\"text\" name=\"cp_email\" size=\"50\" /></td>\n</tr>\n";
}
?>
Link gekopieerd