2011-12-30 124 views
-3

什么是未定义的索引错误? 我没有指定任何索引。什么导致此代码的“未定义索引”错误?

它返回此错误。 Notice: Undefined index: in C:\wamp\www\Maps_ketchupp\search.php on line 73

这是创建错误代码:

<?php 
// Get the search variable from URL 

$var = @$_GET['q'] ; 
$trimmed = trim($var); //trim whitespace from the stored variable 

// rows to return 
$limit=10; 

// check for an empty string and display a message. 
if ($trimmed == "") 
{ 
    echo "<p>Please enter a search...</p>"; 
    exit; 
} 

// check for a search parameter 
if (!isset($var)) 
{ 
    echo "<p>We dont seem to have a search parameter!</p>"; 
    exit; 
} 

//connect to your database ** EDIT REQUIRED HERE ** 
$link = mysql_connect('localhost','root','root'); //(host, username, password) 

//specify database ** EDIT REQUIRED HERE ** 
mysql_select_db("google maps 1.01") or die("Unable to select database"); 
//select which database we're using 

// Build SQL Query 
$query = "select * from markers where name like \"%$trimmed%\" 
    order by name"; 
    // EDIT HERE and specify your table and field names for the SQL query 

    //$numresults=mysql_query($query); 
    //$numrows=mysql_num_rows($numresults); 

$numrows=2; 

// If we have no results, offer a google search as an alternative 

if ($numrows == 2) 
{ 
    echo "<h4>Results</h4>"; 
    echo "<p>Sorry, your search: &quot;" . $trimmed . "&quot; returned zero results</p>"; 

    // google 
    echo "<p><a href=\"http://www.google.com/search?q=" 
     . $trimmed . "\" target=\"_blank\" title=\"Look up" 
     . $trimmed . " on Google\">Click here</a> to try the 
     search on google</p>"; 
    } 

    // next determine if s has been passed to script, if not use 0 
    if (empty($s)) { 
     $s=0; 
    } 

    // get results 
    $query .= " limit $s,$limit"; 
    $result = mysql_query($query) or die("Couldn't execute query"); 

    // display what the person searched for 
    echo "<p>You searched for: &quot;" . $var . "&quot;</p>"; 

    // begin to show results set 
    echo "Results"; 
    $count = 1 + $s ; 

    // now you can display the results returned 
    while ($row= mysql_fetch_array($result)) { 
     **$title = $row["1st_field"];**-----------SHOWING ERROR IN HIS LINE 

     echo "$count.)&nbsp;$title" ; 
     $count++ ; 
} 

$currPage = (($s/$limit) + 1); 

//break before paging 
echo "<br />"; 

// next we need to do the links to other results 
if ($s>=1) 
{ // bypass PREV link if s is 0 
    $prevs=($s-$limit); 
    print "&nbsp;<a href=\"$PHP_SELF?s=$prevs&q=$var\">&lt;&lt; 
    Prev 10</a>&nbsp&nbsp;"; 
} 

// calculate number of pages needing links 
$pages=intval($numrows/$limit); 

// $pages now contains int of pages needed unless there is a remainder from division 

if ($numrows%$limit) 
{ 
    // has remainder so add one page 
    $pages++; 
} 

// check to see if last page 
if (!((($s+$limit)/$limit)==$pages) && $pages!=1) 
{   
    // not last page so give NEXT link 
    $news=$s+$limit; 

    echo "&nbsp;<a href=\"$PHP_SELF?s=$news&q=$var\">Next 10 &gt;&gt;</a>"; 
} 

$a = $s + ($limit) ; 
if ($a > $numrows) { $a = $numrows ; } 
$b = $s + 1 ; 
echo "<p>Showing results $b to $a of $numrows</p>"; 

?> 
+0

是你设置LocalHost的密码'根' – omnath 2011-12-30 06:42:53

+0

你也不应该在文件的末尾使用关闭php标签。有时会导致棘手的错误。 – amccausl 2011-12-30 06:43:59

回答

1

你正在使用的不是mysql_fetch_assoc mysql_fetch_array或你的表没有一个“1st_field”列

+0

感谢兄弟......现在它不会在php中显示任何错误...因为我将1st_field更改为列名,所以我的数据库中有.. – vino 2011-12-30 06:48:58

+0

没问题。如果解决了您的问题,您可以接受答案。 – amccausl 2011-12-30 07:21:41

0

错误很说很多你必须做的。检查行号73是否有错误。这可能是一个变量名,这是错误的,或一个数据库列名...