0

私は学校のデータベースを持っています。データベースで既存のデータを検索すると、入力ボックスのすぐ隣に出力されるようにしたいと思います。したがって、新しいページに移動する必要はありません。持っているものは次のとおりです。

<form action=" " method="post">
School's name: <input type="text" name="schoolname"> <br/>
<input type="submit" name="button" value="Search">
</form>

<?php
$school      = $_POST['schoolname'];

$conn = mysql_connect("localhost", "root");
mysql_select_db("finalproject");

$sql = "select * from presentations where school like '%$school%'";

$result = mysql_query($sql, $conn) or die(mysql_error());

if ( mysql_num_rows($result) >0)
    {
    while ($newArray = mysql_fetch_array($result))
        {
        $school  = $newArray['school'];
        $date = $newArray['date'];
        $place  = $newArray['place'];
        $time = $newArray['time'];


        echo $school . ", " . $place . ", " . $date . ", " . $time . "<br />" ;
        }
    }
    else 
        {
        echo "Record not found";
        }



mysql_close($conn);
?>

これは、別のページにリンクしてそこに出力するために以前に使用したコードです。しかし、今は同じページに出力したいだけです。動作していないように見える他のページからいくつかのコードを移動しました。PHP ビットは次のように出力します: "0) { while ($newArray = mysql_fetch_array($result)) { $school = $newArray['school']; $date = $newArray['date']; $place = $newArray[ 'place']; $time = $newArray['time']; echo $school . ", " . $place . ", " . $date . ", " . $time . " " ; } } else { echo " Record not found"; } mysql_close($conn); ?>" 入力の下の私のページに。私はこれに本当に慣れていないので、誰でも助けていただければ幸いです。:D

4

3 に答える 3

0

ajax 部分のこの小さなスニペットを変更できます...jQuery を使用しているため、ライブラリをページに含める必要があります。

$('#submitButtonID').click(function(){

var data = {
    schoolName: $('#schoolName').val()
};
$.ajax({
    url: "PhpPageWithQuery.php",
    type: "post",
    data: data,
    success: function(msg) {
        $('#resultsDiv).html(msg);

    }
});
于 2013-01-07T19:16:48.590 に答える
0

ファイル拡張子が.php. また$_POST['schooname'] isset、そうであるかどうかを確認してから、php コードを続行します。他のいくつかのポインター。mysql拡張機能は非推奨であるため、使用はお勧めしません。または のいずれmysqliかを使用し、使用PDOする必要がある場合は入力もサニタイズします。私はあなたに衛生ビットを残しました。

<form action=" " method="post">
School's name: <input type="text" name="schoolname"> <br/>
<input type="submit" name="button" value="Search">
</form>

<?php

if( isset( $_POST['schoolname'] ) && strlen( trim( $_POST['schoolname'] ) ) > 0  )
{
        $school      = $_POST['schoolname'];

        $conn = mysql_connect("localhost", "root");
        mysql_select_db("finalproject");

        $sql = "select * from presentations where school like '%$school%'";

        $result = mysql_query($sql, $conn) or die(mysql_error());

        if ( mysql_num_rows($result) >0)
        {
            while ($newArray = mysql_fetch_array($result))
            {
                $school  = $newArray['school'];
                $date = $newArray['date'];
                $place  = $newArray['place'];
                $time = $newArray['time'];


                echo $school . ", " . $place . ", " . $date . ", " . $time . "<br />" ;
            }
        }
        else 
        {
            echo "Record not found";
        }



        mysql_close($conn);
}
?>
于 2013-01-07T19:33:20.157 に答える
0

ページをリロードせずにサーバーにリクエストするには、Ajaxを使用する必要があります。

于 2013-01-07T19:06:19.840 に答える