<?php
require './validate.php';
?>
<html><body>
<form method="POST" action="register.php">
Email: <input type="text" name="email" size="20" /><br />
<input type="submit" value="OK" />
</form>
</body></html>
<?php
$as = $_POST['email'];
$valid->validate($as);
if($valid->getEmail() == true)
{
}
else
?>
validate.php
<?php
class validate
{
public $email;
public $pass;
public $login;
public function validate()
{
{
case 1:
{
$this->email = $email;
}
case 2:
{
$this->pass = $pass;
}
case 3:
{
$this->login = $login;
}
}
}
/*
* Function getEmail is to task validate email.
* $valid->getEmail($email);
* Function only takes is one param.
* Function returns false or true.
*
*/
public function getEmail()
{
if(preg_match('@^[A-Za-z0-9]{1}[a-zA-Z0-9\.\-\_]+\@[a-zA-Z0-9\.\-\_]+\.[a-z]{2,4}$@D', $this->email)) return true;
else return false;
}
}
$valid = new validate;
?>
Wywala błąd
Undefined variable: email in C:\wamp\www\tr\validate.php on line 15
Jak dla mnie to zaraz po wysłaniu formularza do zmiennej $as i wywołaniu $valid->validate($as); w funkcji validate switch powinien ustawić sie na 1 i zdefiniować $this->email = $email;
Jest błąd czyli znaczy że źle myślę ale nic nie mogę innego wymyślić .
Proszę o pomoc .