代码之家  ›  专栏  ›  技术社区  ›  rob - not a robber

低级PHP变量传递问题

  •  0
  • rob - not a robber  · 技术社区  · 16 年前

    我是新的…到站点和PHP。请原谅我的无能。

    不管怎么说,我试着仔细阅读贴着标签的帖子,寻找“传递”“变量”等内容,但并不是我真正需要的。不幸的是,我通过逆向工程学习东西,像许多人一样,我一直在四处偷取PHP的片段并适应我的需要。在学习过程中,我需要填补一些巨大的空白。

    总之,我有一个页面,我把它放在一起,它从我创建的数据库中提取了一堆有序的记录。我让他们展示我喜欢在查询中使用asc的方式。

    我有导航功能,可以通过像“.../name.php”这样的第一个字母来过滤这些结果。bbname=a“,但由于我的能力不足,它不起作用。

    我认为我用于构造查询的方法可能太不灵活了??我将下面的垃圾代码和注释掉的区域放在一起,以显示我想要了解的内容。我不知道为什么我有两个问题。就好像我有一个人坐在那里“等待”传递的信息。我想我应该重新处理最初的查询,以等待get-stufactures仍然将大的select-all放在一起。

    抱歉,如果我的提问方式关闭…谢谢您!

    <?php include "header.php";?>
        <?php include "wrap.php";?>
        <?php include "left.php";?>
        <div id="content">
          <div id="ad728x90">
            <?php include "ad728x90.php";?>
          </div>
          <?php include "utilplaces.php";?>
          <h1>Places by Name</h1>
          <div id="horizon"><a href="?bbname=a">A</a> <a href="?bbname=b">B</a> <a href="?bbname=c">C</a> <a href="?bbname=d">D</a> <a href="?bbname=e">E</a> <a href="?bbname=f">F</a> <a href="?bbname=g">G</a> <a href="?bbname=h">H</a> <a href="?bbname=i">I</a> <a href="?bbname=j">J</a> <a href="?bbname=k">K</a> <a href="?bbname=l">L</a> <a href="?bbname=m">M</a> <a href="?bbname=n">N</a> <a href="?bbname=o">O</a> <a href="?bbname=p">P</a> <a href="?bbname=q">Q</a> <a href="?bbname=r">R</a> <a href="?bbname=s">S</a> <a href="?bbname=t">T</a> <a href="?bbname=u">U</a> <a href="?bbname=v">V</a> <a href="?bbname=w">W</a> <a href="?bbname=x">X</a> <a href="?bbname=y">Y</a> <a href="?bbname=z">Z</a> <a href="?bbname=0">0-9</a></div>
          <div class="cnp"></div>
        </div>
        <div id="biggun">
    
        <?php 
        // Connects to the Database 
        mysql_connect("localhost","user","password") or die(mysql_error());
    
        mysql_select_db("databasename") or die(mysql_error());
    
        // I AM TRYING TO GRAB THE VARIABLES FROM THE URL BUT HAVE NO CLUE
        $bbname = $_GET['bbname'];
    
        // THIS IS THE STANDARD DB QUERY TO SETUP THE PAGE IN DEFAULT LOAD
        $data = mysql_query("SELECT * FROM places ORDER BY `places`.`name` ASC LIMIT 0, 30 ")
        or die(mysql_error());
    
    
    
        echo "<table id=\"placesstable\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n";
        echo "    <col id=\"bbNAME\" />\n"; 
        echo "    <col id=\"bbIMG\" />\n"; 
        echo "    <col id=\"bbDETAILS\" />\n"; 
        echo "    <col id=\"bbHOURS\" />\n"; 
        echo "    <col id=\"bbTYPE\" />\n"; 
        echo "    <col id=\"bplacesEA\" />\n"; 
        echo "    <col id=\"bbRATING\" />\n"; 
        echo "    <thead>\n"; 
        echo "      <tr>\n"; 
        echo "        <th style=\"border: none;\">Name</th>\n"; 
        echo "        <th>&nbsp;</th>\n"; 
        echo "        <th>Details </th>\n"; 
        echo "        <th>Hours</th>\n"; 
        echo "        <th>Type</th>\n"; 
        echo "        <th>Area</th>\n"; 
        echo "        <th> Rating</th>\n"; 
        echo "      </tr>\n"; 
        echo "    </thead>\n";
        echo "    <tbody>\n";
        while($info = mysql_fetch_array( $data )) 
        { 
        echo "<tr>"; 
        echo "<td><p class=\"placesnametable\"><a href=\"#\">".$info['name'] . "</a></p></td> ";
        echo "<td><img src=\"".$info['tmbimg']."\" alt=\"\" name=\"placesthumb\" width=\"100\" height=\"67\" class=\"placesthumb\" /></td> ";
        echo "<td>".$info['address'] . "<br />\n" .$info['phonenumber'] . "</td>"; 
        echo "<td>".$info['hours'] . "</td> "; 
        echo "<td>".$info['type'] . "</td> "; 
        echo "<td>".$info['district'] . "</td> "; 
        echo "<td>Pending<!--RATING--></td></tr>"; 
        } 
        echo "</tbody>"; 
        echo "</table>"; 
    
        ?>
        </div>
        <?php include "feetie.php";?>
    
    1 回复  |  直到 16 年前
        1
  •  0
  •   Kevin Korb    16 年前

    试试这个:

        if(isset($_GET['bbname'])) {
          $name = mysql_real_escape_string($_GET['bbname']);
    $query = mysql_query("SELECT * FROM places ORDER BY name ASC LIMIT 0,30 WHERE name LIKE '$name'") OR die(mysql_error());
        }
        else {
           $data = mysql_query("SELECT * FROM places ORDER BY `places`.`name` ASC LIMIT 0, 30 ")
        }
    

    而不是你在那条街上所拥有的。