Smee Posted May 1, 2010 Share Posted May 1, 2010 Hi All, Can anyone tell me why i might be getting this error: an error occured in the script '/home/footba33/public_html/index.php' on 94: Undefined index: team_name Code applying to line 94 is: <td>'.$_SESSION['search_result']['team_name'].'</td> <td><a href="'.$_SESSION['search_result']['url'].'">'.$_SESSION['search_result']['url'].'</a></td> </tr> </tbody>'); I have provided the script below and thanks for any help! <?php // This is the main page for the site // Include our error config file require_once ('./includes/config.inc.php'); // Set the page title $page_title = 'Football Trip'; include ('./includes/header.html'); // Welcome the user when they are logged in echo '<h1> Welcome to Football Trip'; if (isset($_SESSION['first_name'])) { echo ", {$_SESSION['first_name']}!"; } echo '</h1>'; ?> <form action="index.php?go" method="post" /> <p class="team_supported"><label> Team Name: </label> <input type="text" name="team_name" maxlength="40" /> <p class="submit"> <input type="submit" name="submit" value="Search" /> </form> <?php $error = null; if(isset($_POST['submit'])){ // Search form require_once ('../mysql_connect.php'); if ( preg_match ('/^[[:alnum:] ]{4,30}$/i', $_POST['team_name']) ) { $query = "SELECT * FROM teams WHERE team_name LIKE '%" . $_POST['team_name'] . "%'"; $result = mysql_query($query) or trigger_error("Query: $query\n<br />MySQL Error: ".mysql_error()); $_SESSION['search_result'] = array(); while($row = mysql_fetch_array($result)){ $_SESSION['search_result'][] = $row; } } else { $error = '<center><p><font color ="red">Team Name contains either; one or more invalid characters, or too many/too little characters.</font></p></center>'; } } if(!isset($_SESSION['search_result']) || $error != null){ // No Search or errors echo(($error != null)? $error : "Please submit a Search query"); }else{ echo(' <table width="600" height="100" border="0" /> <thead> <tr> <th scope="col">Team Name</th> <th scope="col">Fixture List URL</th> </tr> </thead>'); echo(' <tbody> <tr> <td>'.$_SESSION['search_result']['team_name'].'</td> <td><a href="'.$_SESSION['search_result']['url'].'">'.$_SESSION['search_result']['url'].'</a></td> </tr> </tbody>'); } // Include HTML Footer include ('./includes/footer.html'); ?> Quote Link to comment https://forums.phpfreaks.com/topic/200389-search-database-error/ Share on other sites More sharing options...
mikesta707 Posted May 1, 2010 Share Posted May 1, 2010 do a print_r and you will be able to see the format of $_SESSION['search_result']. It is probably different that what you think. since you do this here while($row = mysql_fetch_array($result)){ $_SESSION['search_result'][] = $row; } $_SESSION['search_result'] becomes a numeric array, it would look something like $_SESSION['search_result'][0] = first row $_SESSION['search_result'][1] = second row If you wanted to access a certain column of one of the rows, you have to specify it $_SESSION['search_result'][0]['team_name']; Quote Link to comment https://forums.phpfreaks.com/topic/200389-search-database-error/#findComment-1051617 Share on other sites More sharing options...
Smee Posted May 1, 2010 Author Share Posted May 1, 2010 Ah yeah so it does! Nice one thanks its sorted! Quote Link to comment https://forums.phpfreaks.com/topic/200389-search-database-error/#findComment-1051619 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.