TwelvestoneBack End

PHP form validation problem?


Sign in

  • Waiting for Godot ( 730 k posts )
    Just conversation.
  • Thunder Dome ( 23 k posts )
    Photoshop Tennis and Collabs.
  • Photography ( 5.1 k posts )
    For all you shutterbugs, sh...
  • Flash ( 18 k posts )
    ActionScripting to tweens, ...
  • Front End ( 5.9 k posts )
    general front end design an...
  • Back End ( 9.7 k posts )
    serverside scripting, progr...
  • Projects and Theory ( 12 k posts )
    This forum is for discussio...
  • FAQ ( 269 posts )
    All those nagging questions...
  • Design ( 17 k posts )
    graphics & all aspects of g...
  • Purgatory ( 3.6 k posts )
    12stone Jail, feel free to ...
simy202
 
2011-01-06

I'm making one form using php, so validation is using PHP too, I m posting the value in the same form and then trying to insert into mysql..look below.. I encountered the problem --------------------------------------…

Name : Contact :


<?php if(isset($_POST["s1"])) { if($_POST["t1"] == "") { $err = "Enter Your name";

echo "" . "alert('Enter your name')" . ""; echo "" . "document.getElementById('t1').focus();" . ""; } else if($_POST["t2"] == "") { $err = "Enter Your Contact Number"; echo "" . "alert('Enter your contact number')" . ""; }

echo " $err"; }

?>

--------------------------------------…

now what problem m facing here when i click on the "Submit" button i m getting the Error messages but the page is redirecting the i have to write all values all over again ..

suppose i have already wrriten a "NAME(t1)" but didnt write a CONTACT NUMBER(t2) then after m clicking on the SUBMIT button when i do this my page redirecting, m getting the second error "write your contact number" but i have to write all the values like NAME etc all over again ..

so my page is returning to true .. not false .

do you know how to set "return false" through php just like we do using javascript .. i cant use javascript for this .. have to use php in this .. plz help me ..

thank you ..

Stickman
 
2011-01-06

This is a bit of a mess.

First thing to bear in mind, PHP isn't like JavaScript. You can't 'return false' because you're not calling a function when you submit the form, you're requesting a completely new page -- hence the fact that the form is blank when you submit, because it's reloading the page and redrawing the form. If you want to persist the values that were entered, you'd need to write them back into the form when you render it.

On top of that, the 'else if' means that it only checks for a missing contact number if the name is supplied -- really, you want to check for all errors, so just use 'if' here. Of course, this means that if both the name and the contact number are missing then it'll only tell you about the contact number because you'd overwrite the value of $err. So instead of a single string, you could push the errors into an array and then output whatever values are in the array when displaying the error message(s).

Sorry, you must be a member to post to a conversation. Either log in or sign up to get involved.
TwelvestoneBack End

PHP form validation problem?