hyster Posted December 28, 2010 Share Posted December 28, 2010 im having problems with the initial loading of a page "Undefined index". i no the problem is due to 2 $vars having no value but i dont no how to get around the problem. its a form that posts to itself then pulls from the database. once you hit submit the problem goes away. i just need to sort the 1st page load out thanks the problem is the 1st 2 lines of the snippet. snippet $ser_type=$_POST['list']; $search = $_POST['search']; if ($search == '' || $search == ' '){ echo "Search Field is Empty - Please Input a Search Query!"; die; } else{ if ($ser_type=="sku"){ $sql = "SELECT * from $tbl_name WHERE sku like '%$search%' or rsku like '%$search%'"; $result = mysql_query($sql); full code <?php include("http://localhost/dsgi/includes/header.html"); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Modify DataBase</title> </head> <body> <form method="post" action="main.php"> <table class="tablesrch" width=583 height="101" border="0" align=center> <tr> <td height="32" colspan="2"> <div align="center">Enter Search: <input type=text name='search' size=20 maxlength=255> </div></td> </tr> <tr> <td width="193" align="right">Search By:</td> <td width="380"><label> <input name="list" type="radio" id="SKU" value="sku" checked> SKU <input name="list" type="radio" id="make" value="make"> Make <input type="radio" name="list" id="model" value="model"> Model</label></td> </tr> <td height="28" colspan="2"><div align="center"><input type=submit></div></td></tr> </table> </form> <p align="center"> </p> <table class="table2" align="center"> <tr> <td align="center"> <?php //include("http://localhost/dsgi/includes/config.php"); $INC_DIR = $_SERVER["DOCUMENT_ROOT"]. "/dsgi/includes/"; include($INC_DIR. "config.php"); // Connect to server and select database. mysql_connect("$host", "$username", "$password")or die("cannot connect"); mysql_select_db("$db_name")or die("cannot select DB"); $tbl_name="dsgi_serval"; // Retrieve data from database $ser_type=$_POST['list']; $search = $_POST['search']; if ($search == '' || $search == ' '){ echo "Search Field is Empty - Please Input a Search Query!"; die; } else{ if ($ser_type=="sku"){ $sql = "SELECT * from $tbl_name WHERE sku like '%$search%' or rsku like '%$search%'"; $result = mysql_query($sql); if(mysql_num_rows($result) > 0) { echo "Image is on the server. If not green please inform imaging team"; ?> </td> </tr> </table> <table class="table1" width="800" height="72" align="center"> <tr class="tablehead"> <th width="113" align="center">Recon SKU</th> <th width="66" align="center">Orig SKU</th> <th width="90" align="center">Make</th> <th width="169" align="center">Model</th> <th width="58" align="center">Recovery</th> </span></span></tr> <?php while ($rows=mysql_fetch_array($result)){ // table bg colour $choice = strtoupper($rows['comments']); $findme = 'FAIL'; $findme1 = 'PASS'; $mystring2 = trim($rows['comments']); $pos2 = stripos($mystring2, $findme); $pos1 = stripos($mystring2, $findme1); if ($pos1 !== false){ $bgc = "pass" ; } elseif ($pos2 !== false){ $bgc = "fail" ; }else{ $bgc = "wait" ; } ?> <tr id="tabledata" class="<?php echo "$bgc"; ?>"> <td> <?php echo $rows['sku'] ; ?></td> <td> <?php echo $rows['rsku']; ?></td> <td> <?php echo $rows['make']; ?></td> <td> <?php echo $rows['model']; ?></td> <td> <?php echo $rows['recovery']; ?></td> </tr> <?php } } else { $sql = "SELECT * from dsgi_request WHERE sku = '$search'"; $result = mysql_query($sql); if(mysql_num_rows($result) > 0) { while ($rows=mysql_fetch_array($result)){ ?> Image not found on server. <br> please Inform Engineering Team. <?php } ?> <?php }else{ ?> Image not found on server.<br> please Inform Engineering Team. </table> <table width="350" border="1" align="center" cellpadding="0" cellspacing="1"> <tr> <td><form name="form1" method="post" action="request_ac.php"> <table width="100%" border="1" cellspacing="1" cellpadding="3"> <tr> <th colspan="3" > Image Request </th> </tr> <tr> <td>SKU</td> <td>:</td> <td><input name="sku" type="text" id="sku" size="30" maxlength="6" /></td> </tr> <tr> <td width="97">Make</td> <td width="3">:</td> <td width="222"><input name="make" type="text" id="make" size="30"></td> </tr> <tr> <td>Model</td> <td>:</td> <td><input name="model" type="text" id="model" size="30"></td> </tr> <tr> <td>OS</td> <td>:</td> <td><input name="os" type="text" id="os" value="Which Version? Home, Basic?" size="30" /></td> </tr> <tr> <td>Serial</td> <td>:</td> <td><input name="serial" type="text" id="serial" size="30" /></td> </tr> <tr> <td>Bcn</td> <td>:</td> <td><input name="bcn" type="text" id="bcn" size="30" /></td> </tr> <tr> <td>Cell</td> <td>:</td> <td><label> <select name="personel" id="personel"> <option selected="selected">Laptop Cell</option> <option>Cell A</option> <option>Cell B</option> <option>Cell C</option> <option>Desk Top's</option> </select> </label></td> </tr> <tr> <td>Date</td> <td>:</td> <td><input name="date" type="text" id="date" value="<?php echo date("d, M, Y - h:i:s"); ?>" size="30" readonly="readonly" /></td> </tr> <tr> <td colspan="3" align="center"><input type="submit" name="Submit" value="Submit"></td> </tr> </table> </form> </td> </tr> </table> <?Php } } } else{ $sql = "SELECT * from $tbl_name WHERE $ser_type like '%$search%'"; $result = mysql_query($sql); $srch = strtoupper($search); $sertype = strtoupper($ser_type); // echo "$sertype Search Result's For $srch"; echo "Searched $sertype For $srch"; ?> </td> </tr> </table> <table class="table1" width="800" height="72" align="center"> <tr class="tablehead"> <td>Recon SKU</td> <td>Orig SKU</td> <td>Make</td> <td>Model</td> <td>Recovery</td> </tr> <?php while ($rows=mysql_fetch_array($result)){ // table bg colour $choice = strtoupper($rows['comments']); $findme = 'FAIL'; $findme1 = 'PASS'; $mystring2 = trim($rows['comments']); $pos2 = stripos($mystring2, $findme); $pos1 = stripos($mystring2, $findme1); if ($pos1 !== false){ $bgc = "pass" ; } elseif ($pos2 !== false){ $bgc = "fail" ; }else{ $bgc = "wait" ; } // $bgc = "#EE2C2C" ;red // $bgc = "#FF6600" ; amber ?> <?php $make = strtoupper($rows['make']); ?> <tr id="tabledata" class="<?php echo "$bgc"; ?>"> <td> <?php echo $rows['sku'] ; ?></td> <td> <?php echo $rows['rsku']; ?></td> <td> <?php echo $make; ?></td> <td> <?php echo $rows['model']; ?></td> <td> <?php echo $rows['recovery']; ?></td> </tr> <?php } } } ?> <p> </p> </body> </html> Link to comment https://forums.phpfreaks.com/topic/222841-undefined-index/ Share on other sites More sharing options...
Rifts Posted December 28, 2010 Share Posted December 28, 2010 you need to use if(isset for the var with no value example if(isset( $var1 )) Link to comment https://forums.phpfreaks.com/topic/222841-undefined-index/#findComment-1152302 Share on other sites More sharing options...
Maq Posted December 28, 2010 Share Posted December 28, 2010 Wrap the code you want to be executed in: if(isset($_POST['submit'])) { ...code... } Then it will only be executed when the 'submit' button is clicked. Link to comment https://forums.phpfreaks.com/topic/222841-undefined-index/#findComment-1152305 Share on other sites More sharing options...
hyster Posted December 28, 2010 Author Share Posted December 28, 2010 i got rid of the error using this if(isset($_POST['search'])){ $ser_type=$_POST['list']; $search = $_POST['search']; if ($search == '' || $search == ' '){ echo "Search Field is Empty - Please Input a Search Query!"; die; } "rest of the code" } all i need to do now is figure out how to make the above "echo" to work 1st time around. Link to comment https://forums.phpfreaks.com/topic/222841-undefined-index/#findComment-1152328 Share on other sites More sharing options...
Maq Posted December 28, 2010 Share Posted December 28, 2010 I don't get it. You want to execute: echo "Search Field is Empty - Please Input a Search Query!"; on the very first page load? Link to comment https://forums.phpfreaks.com/topic/222841-undefined-index/#findComment-1152329 Share on other sites More sharing options...
hyster Posted December 28, 2010 Author Share Posted December 28, 2010 the message was going to be changed to just " enter search" or similer. the people who this page is aimed at are pritty dim or just play the idiot. its an for an intranet site. Link to comment https://forums.phpfreaks.com/topic/222841-undefined-index/#findComment-1152331 Share on other sites More sharing options...
Maq Posted December 28, 2010 Share Posted December 28, 2010 Oh I see. Then have a variable defined at the top with a default message and redefine it as needed throughout your script then simply echo out the message variable. Link to comment https://forums.phpfreaks.com/topic/222841-undefined-index/#findComment-1152335 Share on other sites More sharing options...
hyster Posted December 28, 2010 Author Share Posted December 28, 2010 rewrote a portion of the code and it works fine now. thanks for your help guys. Link to comment https://forums.phpfreaks.com/topic/222841-undefined-index/#findComment-1152348 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.