Topic: Form validation
The form validation through xajax is not working in following registration form code, I don't know why is to so? need help?
<?php require_once('Connections/conn.php'); ?>
<?php require_once("xajax_core/xajax.inc.php");?>
<?php
$xajax = new xajax();
$xajax->processRequest();
function Validate($array) {
$msg="";
//validate username field
if(isset($array['reg'])){
if(empty($array['txtusername'])) {
$msg.="* <i>Required</i>";
} else {
mysql_select_db($database_conn, $conn);
$sql_user="SELECT * FROM membership WHERE username='".$_POST['txtusername']."'";
mysql_query($sql_user);
$num=mysql_affected_rows();
if($num > 0) {
$msg.="User name already in use, Try someother username";
}}
//validate email field
if(empty($array['txtemail'])) {
$msg.="* <i>Required</i>";
}else {
mysql_select_db($database_conn, $conn);
$sql_email="SELECT * FROM membership WHERE email='".$array['txtemail']."'";
mysql_query($sql_email);
$num=mysql_affected_rows();
if($num > 0) {
$msg.="Emailid already in use, Please sign in";
}}
//validate password field
if(empty($array['txtpsw'])) {
$msg.="* <i>Required</i>";
} else {
$str=$array['txtpsw'];
if(strlen($str)<7) {$msg.="Password length cannot be less than 7 charaters";}
else if(strlen($str)>25) {$msg.="Password length cannot be more than 25 charaters";}
}
//validate confirm password field
if(empty($array['txtcpsw'])) {
$msg.="* <i>Required</i>";
} else {
if($array['txtpsw']!== $array['txtcpsw']){
$msg .="Password does not match";
}}
}
$objResponse = new xajaxResponse();
$objResponse->assign("show","innerHTML", $msg);
return $objResponse;
}
$xajax->registerFunction("Validate");
?>
***********************************************************
Following is the form, that I am trying to validate with above php function and xajax code:
<form action="Register.php" method="post" id="form1" >
<table width="432" border="0" cellpadding="0" cellspacing="0" >
<tr><td colspan="2"> </td></tr>
<!--User Name-->
<tr>
<td width="187" height="38" align="center" valign="middle">
<label>User Name</label></td>
<td width="245" align="left" valign="middle"><input name="txtusername" type="text" class="textbox" /></td>
</tr>
<!--Email-->
<tr>
<td width="187" height="38" align="center" valign="middle">
<label>Email</label></td>
<td width="245" align="left" valign="middle"><input name="txtemail" type="text" class="textbox" /></td><!--onblur="testEmail();"-->
</tr>
<!--Password-->
<tr>
<td height="38" align="center" valign="middle">
<label>Password</label> </td>
<td align="left" valign="middle"><input name="txtpsw" type="password" class="textbox" /> </td><!--onblur="testPassword();"-->
</tr>
<!--Confirm Password-->
<tr>
<td height="38" align="center" valign="middle">
<label>Confirm Password</label> </td>
<td align="left" valign="middle"><input name="txtcpsw" type="password" class="textbox" /> </td><!--onblur="testCPassword();"-->
</tr>
<!--Verification Code-->
<tr>
<td height="38" align="center" valign="middle">
<label>Verification Code</label> </td>
<td align="left" valign="middle">
<input type="text" name="veri" maxlength="25" class="textbox" />
<img src="numgen.php"> </td>
</tr>
<tr>
<td height="39" colspan="2" align="left" valign="middle"><h3 style="width: 119px; height: 21px; text-align: center; vertical-align: middle; padding: 2px 0 2px 0; font-size:16px; margin:0 0 0 0; color:#626262;">Select Package</h3>
</label> </td></tr>
<tr>
<td height="76" colspan="2" valign="middle" bgcolor="#626262">
<table width="387" height="73" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="135">
<div class="silver">
<input name="rd" checked="checked" type="radio" value="Gold" /> Silver
<br /><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; color:#FFFFFF; margin-left:30px">Free</font>
</div>
</td>
<td width="135">
<div class="gold" style="">
<input name="rd" type="radio" value="Gold" /> Gold
<br /><font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; color:#FFFFFF; margin-left:15px">$5/month</font>
</div>
</td>
<td width="157">
<div class="platinium">
<input name="rd" type="radio" value="Gold" /> Platinium
<br />
<font style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; color:#FFFFFF; margin-left:20px">$10/mont</font></div>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan="2">
<p >In silver package you can upload 1 video and 1 picture completely free, in gold package 2 pictures and 2 videos only in $5/month, and in platinium package 5 videos and 5 pictures only in $10/month.</p>
</td>
</tr>
<tr><td colspan="2"><p style="color:#FF0000; font-style:italic; font-size:12px" id="show"></p></td></tr>
<tr><td colspan="2"><input name="reg" type="hidden" value="reg" /> </td></tr>
<tr>
<td height="55" align="right" valign="bottom">
<input name="Submit" type="submit" value="Submit" class="btnstyle" onclick="xajax_Validate(xajax.getFormValues('form1'));" />
</td>
<td align="center" valign="bottom">
<input name="Reset" type="reset" value="Reset" class="btnstyle" />
</td>
</tr>
<tr><td colspan="2"> </td></tr>
</table>
</form>
Last edited by Ashoo (2009-11-10 6:59:31 PM)