dthomas31uk Posted October 15, 2008 Share Posted October 15, 2008 Hi guys. Well am nearly there with my first PHP project, its been difficult at time but I have got the results to display the information I want. BUT. What I would like to do is to display the results from my form to be displayed on the same page. Is it possible to do this. this is the code that handles the form. <form method=post name=f1 action='dd-check.php'> <select name = 'day' class="listBox" tabindex="4" > <?php // generate day numbers for ($x = 1; $x <= 31; $x++) { echo "<option value = $x>$x</option>"; } ?> </select> <select name = 'month' class="listBox" tabindex="4" > <?php // generate month names for ($x = 1; $x <= 12; $x++) { echo "<option value=$x>".date('F', mktime(0, 0, 0, $x, 1, 1)).'</option>'; } ?> </select> <select name = 'year' class="listBox" tabindex="4" > <?php // generate year values for ($x = 2007; $x <= 2008; $x++) { echo "<option value=$x>$x</option>"; } ?> </select> <br /> <? /* If register_global is off in your server then after reloading of the page to get the value of cat from query string we have to take special care. To read more on register_global visit. http://www.plus2net.com/php_tutorial/register-globals.php */ @$cat=$_GET['cat']; // Use this line or below line if register_global is off //@$cat=$HTTP_GET_VARS['cat']; // Use this line or above line if register_global is off ///////// Getting the data from Mysql table for Pick Up list box////////// $querPick=mysql_query("SELECT city, id FROM uk_place"); if (!$querPick) { exit('<p>Unable to obtain category list from the ' . 'database.</p>'); } ///////////// End of query for first list box//////////// ///////// Getting the data from Mysql table for first list box////////// $quer2=mysql_query("SELECT DISTINCT country,id FROM eu_place order by country"); ///////////// End of query for first list box//////////// /////// for second drop down list we will check if category is selected else we will display all the subcategory///// if(isset($cat) and strlen($cat) > 0){ $quer=mysql_query("SELECT DISTINCT city FROM eu_place where id=$cat order by city"); }else{$quer=mysql_query("SELECT DISTINCT city FROM eu_place order by city"); } ////////// end of query for second subcategory drop down list box /////////////////////////// /// Add your form processing page address to action in above line. Example action=dd-check.php//// ////////// Starting of first drop downlist ///////// echo "<select name='cat' onchange=\"reload(this.form)\"><option value=''>Select one</option>"; echo mysql_error(); while($noticia2 = mysql_fetch_array($quer2)) { if($noticia2['id']==@$cat){echo "<option selected value='$noticia2[id]'>$noticia2[country]</option>"."<BR>";} else{echo "<option value='$noticia2[id]'>$noticia2[country]</option>";} } echo "</select>"."<BR>"; ////////////////// This will end the first drop down list /////////// ////////// Starting of second drop downlist ///////// echo "<select name='subcat'><option value=''>Select one</option>"; while($noticia = mysql_fetch_array($quer)) { echo "<option value='$noticia[city]'>$noticia[city]</option>"; } echo "</select>"."<BR>"; ////////////////// This will end the second drop down list /////////// echo 'Full Load'."<label><input type='radio' name='load' value='full_load'</label>"; echo 'Half Load' . "<label><input type='radio' name='load' value='half_load'</label>"."<BR>"; ////////// Starting of second drop downlist ///////// echo "<select name='pickup'><option value=''>Select one</option>"; while($pickup = mysql_fetch_array($querPick)) { echo "<option value='$pickup[city]'>$pickup[city]</option>"; } echo "</select>"."<BR>"; ////////////////// This will end the second drop down list /////////// //// Add your other form fields as needed here///// echo "<input type=submit value=Submit>"; ?> </form> and this is the code that displays my results <?php $pickup=$_POST['pickup']; $cat=$_POST['cat']; $subcat=$_POST['subcat']; $load=$_POST['load']; $appointment_date = sprintf('%02d-%02d-%04d',$_POST['day'], $_POST['month'], $_POST['year']); //mm-dd-yyyy echo "Date required $appointment_date"."<BR>"; echo "Picking up from $pickup" ."<BR>"; echo "Going to $subcat"."<BR>"; $result = mysql_query("SELECT full_price, half_price FROM eu_place WHERE city = '" . mysql_real_escape_string($subcat) . "'") or die(mysql_error()); $row = mysql_fetch_array($result); if ($load == 'full_load') { $total = $row['full_price']; } else { $total = $row['half_price']; } $rResult = mysql_query("SELECT price FROM uk_place WHERE city = '" . mysql_real_escape_string($pickup) . "'") or die(mysql_error()); while ($aRow = mysql_fetch_array($rResult, MYSQL_ASSOC)) { $iPrice = $aRow['price']; echo "£"; echo ($iPrice) + ($total); } ?> know that its go to have something to do with the form action, but don't know where to start, have tried a couple of things but no joy Quote Link to comment https://forums.phpfreaks.com/topic/128604-help-displaying-my-form-results-on-the-same-page/ Share on other sites More sharing options...
wildteen88 Posted October 15, 2008 Share Posted October 15, 2008 If you want to the form to submit to itself then done set an action. Or use the following <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> Quote Link to comment https://forums.phpfreaks.com/topic/128604-help-displaying-my-form-results-on-the-same-page/#findComment-666490 Share on other sites More sharing options...
runnerjp Posted October 15, 2008 Share Posted October 15, 2008 yes do it like this (chnage the 2 things i have highlighted out for you <?php if (isset($_POST['name of form'])) { //here you need to enter the name of the form $pickup=$_POST['pickup']; $cat=$_POST['cat']; $subcat=$_POST['subcat']; $load=$_POST['load']; $appointment_date = sprintf('%02d-%02d-%04d',$_POST['day'], $_POST['month'], $_POST['year']); //mm-dd-yyyy echo "Date required $appointment_date"."<BR>"; echo "Picking up from $pickup" ."<BR>"; echo "Going to $subcat"."<BR>"; $result = mysql_query("SELECT full_price, half_price FROM eu_place WHERE city = '" . mysql_real_escape_string($subcat) . "'") or die(mysql_error()); $row = mysql_fetch_array($result); if ($load == 'full_load') { $total = $row['full_price']; } else { $total = $row['half_price']; } $rResult = mysql_query("SELECT price FROM uk_place WHERE city = '" . mysql_real_escape_string($pickup) . "'") or die(mysql_error()); while ($aRow = mysql_fetch_array($rResult, MYSQL_ASSOC)) { $iPrice = $aRow['price']; echo "£"; echo ($iPrice) + ($total); } }else{ <form method=post name=f1 action='<?php echo $_SERVER['PHP_SELF']; ?>'> <select name = 'day' class="listBox" tabindex="4" > <?php // generate day numbers for ($x = 1; $x <= 31; $x++) { echo "<option value = $x>$x</option>"; } ?> </select> <select name = 'month' class="listBox" tabindex="4" > <?php // generate month names for ($x = 1; $x <= 12; $x++) { echo "<option value=$x>".date('F', mktime(0, 0, 0, $x, 1, 1)).'</option>'; } ?> </select> <select name = 'year' class="listBox" tabindex="4" > <?php // generate year values for ($x = 2007; $x <= 2008; $x++) { echo "<option value=$x>$x</option>"; } ?> </select> <br /> <? /* If register_global is off in your server then after reloading of the page to get the value of cat from query string we have to take special care. To read more on register_global visit. http://www.plus2net.com/php_tutorial/register-globals.php */ @$cat=$_GET['cat']; // Use this line or below line if register_global is off //@$cat=$HTTP_GET_VARS['cat']; // Use this line or above line if register_global is off ///////// Getting the data from Mysql table for Pick Up list box////////// $querPick=mysql_query("SELECT city, id FROM uk_place"); if (!$querPick) { exit('<p>Unable to obtain category list from the ' . 'database.</p>'); } ///////////// End of query for first list box//////////// ///////// Getting the data from Mysql table for first list box////////// $quer2=mysql_query("SELECT DISTINCT country,id FROM eu_place order by country"); ///////////// End of query for first list box//////////// /////// for second drop down list we will check if category is selected else we will display all the subcategory///// if(isset($cat) and strlen($cat) > 0){ $quer=mysql_query("SELECT DISTINCT city FROM eu_place where id=$cat order by city"); }else{$quer=mysql_query("SELECT DISTINCT city FROM eu_place order by city"); } ////////// end of query for second subcategory drop down list box /////////////////////////// /// Add your form processing page address to action in above line. Example action=dd-check.php//// ////////// Starting of first drop downlist ///////// echo "<select name='cat' onchange=\"reload(this.form)\"><option value=''>Select one</option>"; echo mysql_error(); while($noticia2 = mysql_fetch_array($quer2)) { if($noticia2['id']==@$cat){echo "<option selected value='$noticia2[id]'>$noticia2[country]</option>"."<BR>";} else{echo "<option value='$noticia2[id]'>$noticia2[country]</option>";} } echo "</select>"."<BR>"; ////////////////// This will end the first drop down list /////////// ////////// Starting of second drop downlist ///////// echo "<select name='subcat'><option value=''>Select one</option>"; while($noticia = mysql_fetch_array($quer)) { echo "<option value='$noticia[city]'>$noticia[city]</option>"; } echo "</select>"."<BR>"; ////////////////// This will end the second drop down list /////////// echo 'Full Load'."<label><input type='radio' name='load' value='full_load'</label>"; echo 'Half Load' . "<label><input type='radio' name='load' value='half_load'</label>"."<BR>"; ////////// Starting of second drop downlist ///////// echo "<select name='pickup'><option value=''>Select one</option>"; while($pickup = mysql_fetch_array($querPick)) { echo "<option value='$pickup[city]'>$pickup[city]</option>"; } echo "</select>"."<BR>"; ////////////////// This will end the second drop down list /////////// //// Add your other form fields as needed here///// echo "<input type=submit name "submit" value=Submit>"; ?> </form> }?> havent tested it but should be right Quote Link to comment https://forums.phpfreaks.com/topic/128604-help-displaying-my-form-results-on-the-same-page/#findComment-666495 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.