scottybwoy Posted November 9, 2006 Share Posted November 9, 2006 Ello everyone, I have a sigle field form in my header.htm that Is used for searching for customers, I have it so it uses a google sugest type dropdown, I use $_GET for Submit button to send the data to my php file. But am unsure how to process that data so that if it has a value it will query the database and post the details into the form. Here's my code so far :[code]<?phpfunction displayHome(){ $content = $_REQUEST['content']; $company = $_REQUEST['company']; $product = $_REQUEST['product']; if (isset($company)) { $company = preg_match('|^[a-z0-9]+$i |', $company); $company = strtoupper($company); $this->appCon(); $result = mssql_query("SELECT * FROM customers WHERE company = '" . $company . "'") or die("Customer query failed"); if (isset($details)) { $content = "custAdmin"; $_POST($details); } else { $content = "custAdmin"; } } else if (isset($product)) { // Code yet to be done !! } else if ($content == "") { $content = "admin"; } require_once(HEADER);echo<<<END<table width=100% valign="left"><tr> <td rowspan="2" width=60%>END; include(TEMPLATE_DIR . "/$content.inc");echo "</td><td width=40%>"; include(TEMPLATE_DIR . "/inform.php");echo "</td></tr><tr><td>"; include(TEMPLATE_DIR . "/prodDisp.php");echo "</td></tr><tr><td colspan='2'>"; require_once(TEMPLATE_DIR . '/footer.php');echo "</td></tr></table>"; }?>[/code]And this is custAdmin.inc :[code]<table align="center" class="canvas" width=99%> <tr> <td align="center" width="600" cellspacing="3"> <form name="custAdmin" action="{SELF_PATH}" method="GET"><!-- START_CUST --><table width="570" class="form"> <tr> <td width="160" class="labelL">Company Name</td> <td width="200"><input type="text" name="company" value="" size="40" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- COMPANY --></td> <td width="160" class="labelR">Customer Id</td> <td width="50"><input type="text" name="custId" value="" size="15" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- CUST_ID --></td> </tr></table><table width="570" class="form"> <tr> <td width="120" class="labelL">Address 1</td> <td width="100"><input type="text" name="add1" value="" size="30" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- ADD1 --></td> <td width="150" class="labelR">Telephone :</td> <td width="100"><input type="text" name="tel" value="" size="30" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- TEL --></td> </tr> <tr> <td width="120" class="labelL">Address 2</td> <td width="100"><input type="text" name="add2" value="" size="30" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- ADD2 --></td> <td width="150" class="labelR">Fax :</td> <td width="100"><input type="text" name="fax" value="" size="30" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- FAX --></td> </tr></table><table width="570" class="form"> <tr> <td width="120" class="labelL">Town / City</td> <td width="100"><input type="text" name="town" value="" size="30" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- TOWN --></td> <td width="70" class="labelR">e-mail :</td> <td width="280"><input type="text" name="email" value="" size="48" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- EMAIL --></td> </tr></table><table width="570" class="form"> <tr> <td width="120" class="labelL">County</td> <td width="100"><select name=county> <option value="">Select a County</option> <option value={COUNTY}><!-- COUNTY --></option> </select></td> <td width="330"> </td> </tr> <tr> <td width="120" class="labelL">Country</td> <td width="100"><input type="text" name="country" value="" size="30" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- COUNTRY --></td> <td width="150" class="labelR">Customer Type</td> <td width="100"><select name=type> <option value="">What type of customer</option> <option value={CUST_TYPE}><!-- TYPE --></option> </select></td> </tr> <tr> <td width="120" class="labelL">Post Code :</td> <td width="100"><input type="text" name="postcode" value="" size="15" style="font-family: MS Sans Serif; font-size: 10px; background-color:#FFFFFF"><!-- POSTCODE --></td> <td width="150" class="labelR">Payment Method</td> <td width="100"><select name=pay> <option value="">Choose a Payment Method</option> <option value={CUST_PAY}><!-- PAY -->}</option> </select></td> </tr></table><table width="570"> <tr> <a href="home.php?content=client" class="butText">Add Client</a> <input type="submit" value="Commit" onmouseover="this.className='actionBtn actionBtnhov'" onmouseout="this.className='actionBtn'" class="btn"> </tr></table></form><!-- END_CUST --></table>[/code]So if someone can send me on the right track for my php I'd b much apreciated and also if I've laid out my HTML right for recieving the info? Thanks Link to comment https://forums.phpfreaks.com/topic/26676-header-form-and-php/ Share on other sites More sharing options...
Orio Posted November 9, 2006 Share Posted November 9, 2006 Doing this:[code]<?php$content = $_REQUEST['content'];$company = $_REQUEST['company'];$product = $_REQUEST['product'];if (isset($company)){//more code}?>[/code]Is wrong. Why? Because when you type $company = $_REQUEST['company'], you set $company. It doesnt matter what value it has (empty or not empty) it is set.So when running isset($company), TRUE will be always returned.You should change your if clause into- if(isset($_REQUEST['company'])) or to- if (!empty($company))Smae goes for if(isset($details)) and if(isset($product))Orio. Link to comment https://forums.phpfreaks.com/topic/26676-header-form-and-php/#findComment-122034 Share on other sites More sharing options...
scottybwoy Posted November 9, 2006 Author Share Posted November 9, 2006 Thanks Orio for correcting my error, I was begining to see that. So I think I need to make a new class for dealing with where the info needs to be put, ( a customer class) how would I include that with the way I'm displaying the content at the moment or is there a better way? Link to comment https://forums.phpfreaks.com/topic/26676-header-form-and-php/#findComment-122049 Share on other sites More sharing options...
scottybwoy Posted November 9, 2006 Author Share Posted November 9, 2006 At the same time can this function be done easier :[code]<?phpfunction makeCustId($company) { $company = preg_match('|^[A-Z]+$i', $company); $company = substr($company, 0, 2); $this->appCon(); $sql = mssql_query("SELECT custId FROM customers WHERE custId LIKE '" . $company . "'%"); $rowcount = mssql_num_rows($sql); $rowInt = intval($rowcount); $rowInt ++; if ($rowInt <= 9) { implode(00, $rowInt); } else if ($rowInt <= 99) { implode(0, $rowInt); } $custId = implode($company, $rowInt); return $custId; }?>[/code]I want it to get the first 3 letters from the company name then see if there are any others in the db and prepend them with incremental 3 digit value on a first come first serve basis. Code is unchecked so may not work, but wanted to see if it can be done smoother first. Thanks Link to comment https://forums.phpfreaks.com/topic/26676-header-form-and-php/#findComment-122121 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.