Results 1 to 5 of 5

Thread: PHP Form handling

  1. #1
    Join Date
    Jun 2014

    Red face PHP Form handling

    Hi Guys,
    I am very new to web development and particular PHP. I have been developing fat applications for the last 12 years, so I am not so new to programming.

    Earlier today I started creating a very simple login form, that used the action="post" in the <form> tag to send the captured details to a waiting PHP page.
    This works like intended and I managed to connect to my DB and successfully validate the login details.

    Then later today, reading w3schools material I came across PHP Form validation using the action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" action and I applied the code samples they provided, and that works really, really well.
    And right here is my conundrum. I know how to get data from one page to another with a normal action="waiting_page.php", but when using the sample above, I actually don't know how to move to the awaiting page once my form validation was successful.
    I have gone through the w3schools material a couple of times and cannot figure out how to direct the call to the intended page and passing the values from the form. It must be very obvious (is my only conclusion) because it is not stated there, but I am lost.
    It has been several hours and I would really appreciate the line of code that I am missing...

    thank you,

  2. #2
    Join Date
    Jul 2013
    Voorheesville NY USA
    1 - It seems to be a universal opinion that w3 schools is a) not a school b) not associated with the W3C and c) not worth the webpage it's written on. Find another resource.
    2 - moving from one script to another is not always necessary. You can modularize your scripts by using the php include to literally include certain pieces of code depending on your needs. Or you can use the header() command to re-direct to another whole script. When your signin page is posted and triggers your waiting_page.php script your next response (the response you create in the waiting page script) will determine the next course of action for your appl. So if you process the login and like it, you can then use a header to begin a new script and let that script have the appropriate forms and actions to handle the next stage.

    3 - as for passing values you can use session variables (look it up in the manual) if you are doing an immediate re-direct with a header, or you can hide them in whatever response you send for the next script to receive via THAT post and use them in THAT script.

  3. #3
    Join Date
    Mar 2013
    Gingerjm gives good advice. In php you can begin a script with
    which must be before anything has been output so put it at the top. Then set variables like
    $_SESSION['name'] = 'david';
    . In any other script you can retrieve that variable as long as you have the session_start at the top.
    if ($_SESSION['name']='david') {echo 'cool name';}
    You can also do something like:
    header ('Location: http://mydomain.com/myscript.php?name=david&myvar=5');

  4. #4
    Join Date
    Jun 2014
    Hello ginerjm,
    thank you for the reply. Outside of the official php.net online manual, is there another source that is recommendable for newbies to the PHP world like myself?
    I know from an application design what it is that I need to accomplish, but I need some solid material to guide me through stuff like:
    1) Best security principles to implement
    2) How to implement and use a framework like Symphony2 (and avoiding the typical pitfalls that comes with ORM frameworks and performance issues in PHP)

    thank you.

  5. #5
    Join Date
    Aug 2004
    1. Essential PHP Security

    2. 99% of the performance issues I deal with in PHP applications have nothing to do with PHP -- it's almost always database optimization issues; so I would not fret too much about your PHP code in that regard. As far as the ORM aspect of some PHP frameworks, I'll admit that I don't like to use them: I actually prefer to write my own SQL. (I don't necessarily mind the frameworks, it's the ORM part I've never cared for.)
    "Well done....Consciousness to sarcasm in five seconds!" ~ Terry Pratchett, Night Watch

    How to Ask Questions the Smart Way (not affiliated with this site, but well worth reading)

    My Blog
    cwrBlog: simple, no-database PHP blogging framework

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
HTML5 Development Center



X vBulletin 4.2.2 Debug Information

  • Page Generation 0.13417 seconds
  • Memory Usage 2,884KB
  • Queries Executed 15 (?)
More Information
Template Usage (33):
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_global_above_footer
  • (1)ad_global_below_navbar
  • (1)ad_global_header1
  • (1)ad_global_header2
  • (1)ad_navbar_below
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)ad_thread_first_post_content
  • (1)ad_thread_last_post_content
  • (4)bbcode_code
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)headinclude_bottom
  • (5)memberaction_dropdown
  • (1)navbar
  • (4)navbar_link
  • (1)navbar_moderation
  • (1)navbar_noticebit
  • (1)navbar_tabs
  • (2)option
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available (6):
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files (26):
  • ./showthread.php
  • ./global.php
  • ./includes/class_bootstrap.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/functions_navigation.php
  • ./includes/class_friendly_url.php
  • ./includes/class_hook.php
  • ./includes/class_bootstrap_framework.php
  • ./vb/vb.php
  • ./vb/phrase.php
  • ./includes/functions_facebook.php
  • ./includes/functions_calendar.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_notice.php
  • ./packages/vbattach/attach.php
  • ./vb/types.php
  • ./vb/cache.php
  • ./vb/cache/db.php
  • ./vb/cache/observer/db.php
  • ./vb/cache/observer.php 

Hooks Called (70):
  • init_startup
  • friendlyurl_resolve_class
  • init_startup_session_setup_start
  • database_pre_fetch_array
  • database_post_fetch_array
  • init_startup_session_setup_complete
  • global_bootstrap_init_start
  • global_bootstrap_init_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • load_show_variables
  • load_forum_show_variables
  • global_state_check
  • global_bootstrap_complete
  • global_start
  • style_fetch
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • strip_bbcode
  • friendlyurl_clean_fragment
  • friendlyurl_geturl
  • forumjump
  • cache_templates
  • cache_templates_process
  • template_register_var
  • template_render_output
  • fetch_template_start
  • fetch_template_complete
  • parse_templates
  • fetch_musername
  • notices_check_start
  • notices_noticebit
  • process_templates_complete
  • friendlyurl_redirect_canonical
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • memberaction_dropdown
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • build_navigation_data
  • build_navigation_array
  • check_navigation_permission
  • process_navigation_links_start
  • process_navigation_links_complete
  • set_navigation_menu_element
  • build_navigation_menudata
  • build_navigation_listdata
  • build_navigation_list
  • set_navigation_tab_main
  • set_navigation_tab_fallback
  • navigation_tab_complete
  • fb_like_button
  • showthread_complete
  • page_templates