php
  • html
  • 2010-03-16 17 views 0 likes 
    0

    我想創建一個鏈接,這將允許我分頁搜索去到下一結果頁面包括在URL適當的鏈接的格式

    我與我的聯繫以下錯誤的搜索詞創建

    解析錯誤:語法錯誤,意想不到的T_ENCAPSED_AND_WHITESPACE,期待T_STRING或T_VARIABLE或T_NUM_STRING在/home/dd615/public_html/searchPage.php在線47

    這裏是鏈接

    echo "<a href='{$_SERVER['PHP_SELF']}?search=$_GET['search']?pagenumber=1'> FIRST </a>"; 
    

    任何幫助,將不勝感激

    回答

    0

    你需要用第二個變量:

    echo "<a href='{$_SERVER['PHP_SELF']}?search={$_GET['search']}&pagenumber=1'> FIRST </a>"; 
    

    但它會更好地使用正確的編碼。所以,試試這個:

    echo '<a href="' . htmlspecialchars($_SERVER['PHP_SELF'].'?search='.urlencode($_GET['search']).'&pagenumber=1') . '"> FIRST </a>'; 
    

    urlencode用於編碼是網址查詢不適當的任何字符(根據application/x-www-form-urlencoded type)和htmlspecialchars逃脫HTML特殊字符。

    0

    這是因爲特殊的字符串語法。你用花括號$ _SERVER ['PHP_SELF']封裝,但是沒有對$ _GET ['search']做同樣的事情。 參考string syntax manual page,它值得一讀

    還要注意的是隻有一個?字符可以在查詢字符串,&應作爲分隔符的字符串

    0

    回答您的實際問題的其餘部分是你需要在$ _GET ['search']周圍放置花括號,因爲它在這些引號內。所以像這樣:

    echo "<a href='{$_SERVER['PHP_SELF']}?search={$_GET['search']}?pagenumber=1'> FIRST </a>"; 
    

    此外,與您的問題無關,您可能需要更改第二個'?'到'&'像這樣:

    echo "<a href='{$_SERVER['PHP_SELF']}?search={$_GET['search']}&pagenumber=1'> FIRST </a>"; 
    

    但是可能再次,也許不是。

    相關問題