2

私がやろうとしているのは、スコットランドの32の異なる場所のドロップダウンコンテナを作成することです。たとえば、グラスゴーなどの選択肢の1つを選択すると、各記事の見出し、テキストなどのコンテンツを表示するURLに移動する必要があります。 divWHEREの場所=グラスゴー。

ドロップダウンで4つのうちの1つを選択すると、コードが機能したというエラーメッセージや認識はまったくありません。

片付けて、これまでにやったことを正しくすることができますか?私は非常に素晴らしいでしょう!

使用されている私のファイルは次のとおりです。

header.php

<html>
<head>
<script src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $('#location').change(function(){
            //Retrieve Content from the back-end PHP page, and pass the ID selected
            var url = 'location.php?location=' + $(this).val();
            $('#txtHint').load(url);
        });
    });
</script>

</head>
<body>
     <div id="header">
        <div class="headerLeftContent">
            <select id='location'>
                    <option href="Link to a dynamic page with all the content from glasgow" value="Glasgow">Glasgow</option>
                    <option href="Link to a dynamic page with all the content from x" value="x">x</option>
                    <option href="Link to a dynamic page with all the content from test" value="test">test</option>
                    <option href="Link to a dynamic page with all the content from edinburgh" value="Edinburgh">Edinburgh</option>
            </select>
            <div id='txtHint'></div>
        </div>          
    </div>

</body>
</html>

location.php

<?php
$connect = mysql_connect('xxxxxx', 'xxxxxx', 'xxxxxx');
$select_db = mysql_select_db('xxxxxx');

$location = $_REQUEST['location'];

$query = "SELECT * FROM podContent WHERE location = '.$location.'";

while($row = mysql_fetch_array($query))
{
echo $row['text'];
}

mysql_close($connect);

?>

また、「SQLインジェクション」や「mysql」を「PDO」にする方法についてのコメントは、私が理解しているので不要ですが、現時点ではテストを行っているだけで、これを修正します。

ありがとう。

4

2 に答える 2

2

MySQLクエリ内で場所の名前を連結するのに間違いがあるようですが、何にも一致していません(したがって、何もecho返されません)。これを変える:

$query = "SELECT * FROM podContent WHERE location = '.$location.'";

$query = "SELECT * FROM podContent WHERE location = '$location'";

.Glasgow.(データベースにあるようなものがない限り...)

次にmysql_query($query)、アロンが提案したように電話する必要があります。

于 2013-02-15T23:09:25.337 に答える
0

mysql_queryを使用して、リソースをmysql_fetch_array関数に渡す必要があります。

$query = "SELECT * FROM podContent WHERE location = '.$location.'";
$result = mysql_query($query);
while($row = mysql_fetch_array($result))
 {
    echo $row['text'];
 }
于 2013-02-15T21:54:25.883 に答える