2010-11-13 10 views
0

Puisque aucun autre sujet n'utilise le script que j'utilise, j'ai besoin d'aide sérieuse. Je travaille actuellement sur un projet de travail et ma fonctionnalité de recherche renvoie la première page correctement mais quand je clique sur Next 10 cela ne fait absolument rien! Veuillez noter que j'ai enlevé du code mais j'ai laissé des commentaires inutiles, bien que cela n'affecte pas les performances du script! Voici mon code, mais bien sûr j'ai filtré le nom d'utilisateur et mot de passe: <PHP Search Script ne retournera pas les pages correctement

<?php 

    // Get the search variable from URL 

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


if(!$session->isSuperuser()){ 
$AdminorSuper = "Admin"; 
} 

else 
{ 
$AdminorSuper = ""; 
} 
// rows to return 
$limit=10; 

if($error=="errdel") 
{ 
echo "<p>Only Admins and Superusers may delete customers. </p>"; 
} 
if($error=="errcret") 
{ 
echo "<p>Only Admins and Superusers may create customers. </p>"; 
} 
// 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 ** 
mysql_connect("*FILTERED*","*FILTERED*","*FILTERED*"); //(host, username, password) 


mysql_select_db("*FILTERED*") or die("Unable to select database"); 

// Build SQL Query 
$query = "select * from customer where Surname OR TitleName OR PostCode like \"%$trimmed%\" 
    order by Surname"; 

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



if ($numrows == 0) 
    { 
    if($trimmed=="") 
    { 
    echo "No customers are in the database!"; 
    } 
    else 
    { 
    echo "<h2>Results</h2>"; 
    echo "<p>Sorry! No Results were found for: &quot;" . $trimmed . "&quot;.</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 
if($var=="") 
{ 
echo "<p>Viewing all Results</p>"; 
} 
else 
{ 
echo "<p>Results for: &quot;" . $var . "&quot;</p>"; 
} 
// begin to show results set 
echo ""; 
$count = 1 + $s ; 

// now you can display the results returned 
    echo '<table border="1">'; 
    echo "<tr><td><b>Surname</b></td><td><b>Title/Name</b></td><td><b>Email</b></td><td><b>Telephone</b></td><td><b>Edit</b></td><td><b>Del</b></td></tr>\n"; 
    while ($row= mysql_fetch_array($result)) { 
    $Surname = $row["Surname"]; 
    $Title = $row["TitleName"]; 
    $Email = $row["Email"]; 
    $Telephone = $row["Telephone"]; 
    $id = $row["id"]; 
    echo '<tr><td>' .$Surname.'</td><td>'.$Title.'</td><td>'.$Email.'</td><td>'.$Telephone.'</td><td>' . '<a href="updateCustomerForm' . $AdminorSuper. '.php?id='.$id.'">[EDIT]</a></td>'.'<td>'. '<a href="deleteCustomer.php?id='.$id.'">[x]</a></td>'. '</tr>'; 
    $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++; 
    } 
echo "</table>"; 
// 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>"; 

?> 

Répondre

2

Il semble que le code manquant $s=$_GET['s'];

Bonne chance :)

+0

OMG! Je vous remercie! Je pensais que je l'ai défini plus haut! Votre réponse a fonctionné et je vous remercie du plus profond de mon coeur !!! – PwnageAtPwn

+0

De rien. – Mohammad