|
Posted by Jim Michaels on 02/12/06 08:32
"Rich" <rich@newsguy.com> wrote in message
news:dsda3o02ea6@drn.newsguy.com...
> In article <1139418022.628334.121000@z14g2000cwz.googlegroups.com>,
> mouac01@yahoo.com says...
>>
>>I'm new to PHP/Javascript. I have a simple form I want to validate the
>>fields with javascript and then run the PHP script. All the scripts
>>are in one page. I want PHP to control where the next page is. It
>>works fine without the javascript but when I add the javascript the
>>page doesn't do anything besides the validation. Thanks for your
>>help... Chong
>>
>>----login.html--------------------------------
>><?php
>>ob_start();
>>session_start();
>>require('datasource.html');
>>switch ($_POST['process'])
>>{
>> case 'Login':
>> $_SESSION['login'] = $_POST['login'];
>> $sql = "SELECT first_name, last_name, security_access, expire,
>>passwd_date FROM sy_user WHERE login = '".$_SESSION['login']."' AND
>>password = '".substr(sha1($_POST['password']), 0, 10)."'";
>> $result = mysql_query($sql);
>> if (mysql_num_rows($result) < 1)
>> {
>> $msg = "Invalid login and password!";
>> }
>> else
>> {
>> $row = mysql_fetch_assoc($result);
>> $_SESSION['first_name'] = $row['first_name'];
>> $_SESSION['last_name'] = $row['last_name'];
>> $_SESSION['security_access'] = $row['security_access'];
>> $passwd_date = $row['passwd_date'];
>> $expire = $row['expire'];
>>
>> if ($passwd_date + $expire < date('Y-m-j'))
>> {
>> header('location: expired.html');
>> }
>> else
>> {
>> header('location: main.html');
>> }
>> }
>>}
>>?>
>><SCRIPT LANGUAGE="JavaScript">
>>function checkrequired(form)
>>{
>>for(f=0;f<form.length;f++)
>>{
>> if(form[f].name.substring(4,length)=="reqd")
>> {
>> if(form[f].value){continue}
>> else
>> {
>> alert("Please fill "+form[f].name.substring(5));
>> form[f].focus();
>> return false;
>> }
>> }
>>}
>>return true;
>>}
>></script>
>>
>><form method="post">
>>Login:<input name="reqd.login" type="text"><br>
>>Password:<input name="reqd.password" type="password"><br>
>><input type="submit" name="process" value="Login"
>>onClick="checkrequired(this)">
>></form>
>><?php echo($msg); ?>
>>-------------------------------------------------------
>>
>
> May need to add to your <form> tag. Once the Javascript does the form
> validation, it needs to know where to send the form data. You have the
> method
> set to "post" but were missing the action setting. If you are sending the
> form
> back to itself you can usually specify that in PHP using...
>
> <form action="<?php $PHP_SELF; ?>" method="post">
that works if you have register_globals on probably. and it's probably not
on by default.
try using <?php echo $_SERVER['PHP_SELF']; ?> instead. it's more likely to
work.
>
> You might need to pull the "onClick" event from your submit button and
> include
> that in the form tag as well.
>
> Rich
> --
> Newsguy BonusBytes! - Free monthly rewards
> http://newsguy.com/bonusbytes.htm
>
[Back to original message]
|