mam problem z walidacją formularza, wykorzystując klasę "ajax.inc.php"
udało mi się jak dotychczas przeprowadzić walidację formularza i odpowiednio poinformować użytkownika o błędach, jeśli takowe wystąpiły
tylko teraz mam problem ponieważ nie wiem jak w kolejnych funkcjach przekazać
-przykładowo w zmiennej $_POST["form_error"]="flase"; odpowienią wartość
(czyli jak nadać zmiennej $_POST[..] wartość przy pomocy funkcji wywoływanych przez ajax-a)
<?php require_once( 'mod/xajax.inc.php' ); $objAjax = new xajax(); $objAjax->registerFunction("checkEmail"); $objAjax->processRequests(); $objAjax->printJavascript(); ?>
15 i 28 linia kodu
<?php //:: --------------------------------------------------------------------------- //:: Sprawdzanie poprawności składni adresu e-mail //:: --------------------------------------------------------------------------- function checkEmail($email) { { $checkVal = "ok!"; if(!ereg( "^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)*(.[a-zA-Z0-9]{2,4})$", $email )) { $checkVal = "To nie Email"; //:: //:: I tu chciał bym ustawić zmienną $_POST['form_error']="false"; //:: } //::Sprawdz czy isnieje juz taki w bazie danych $query = "SELECT email FROM `uzytkownik` WHERE email = '".$email."'"; if(!$ex==0) { $checkVal = "Zajęty Email!"; //:: //:: $_POST['form_error']="false"; //:: } } $objResponse = new xajaxResponse(); if ($checkVal == "ok!") { $objResponse->addScript("document.getElementById('c_email').style.backgroundImage = 'url(img/ok_tick.gif)';"); $objResponse->addScript("document.getElementById('c_email').style.color = 'green';"); $objResponse->addScript("document.getElementById('email').style.border = '1px solid green';"); } else { $objResponse->addScript("document.getElementById('c_email').style.backgroundImage = 'url(img/bad_tick.gif)';"); $objResponse->addScript("document.getElementById('c_email').style.color = 'red';"); $objResponse->addScript("document.getElementById('email').style.border = '1px solid red';"); } $objResponse->addAssign("c_email", "innerHTML", $checkVal); return $objResponse->getXML(); } ?>
<input autocomplete="off" type="text" name="email" id="email" value="<?php echo $_SESSION['r_f']['email']; ?>" onkeyup="xajax_checkEmail(document.getElementById('email').value);" />
Będę bardzo wdzięczny za pomoc
-pozdrawiam.