0

私はPHPに比較的慣れていません..私のWebページでは、同じページに複数のページをロードする必要があります..のように、すべてのチェックボックスと送信ボタンがあるcwt.htmlという名前の基本的なHTMLページがあります。[送信] ボタンをクリックすると、選択したチェックボックス (cwt.html の) に関連付けられた次のページ (たとえば、processing.php) も同じページに読み込まれます。

<html>
<head>
<title> Conditions We Treat </title>
</head>
<body>
<form id = form1 action = "processing1.php" method = "post">
<input type = "checkbox" name = "sickness[]" value = "Nausea">Nausea</input><br/>
<input type = "checkbox" name = "sickness[]" value = "Constipation">Constipation</input><br/>
<input type = "checkbox" name = "sickness[]" value = "vomiting">Vomiting</input><br/>
<div id = "submit1"><input type = "submit" name = "submit" value = "submit"></input></div><br/>
</form>
</body>
</html>

この Web ページで送信ボタンがクリックされると、コントロールは processing1.php に移動する必要がありますが、コンテンツは同じページにロードする必要があります。

<html>
<head>
<title> Conditions We Treat </title>
</head>
<body>
<?php
echo "hi"
foreach($_POST['sickness'] as $s)
{
    $con = mysqli_connect("localhost","root","","collofnursing");
    //mysql_select_db("collofnursing");
    $res = mysqli_query($con,"select * from condwetreat");
    while($row = mysqli_fetch_array($res))
    {
        echo $s;?> <br><br><?php
        }
}
?>
</body>
</html>
4

3 に答える 3

1

jquery を使用して、送信方法を onclick イベントで関数に変更できます。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
function onSubmitForm(){
    $.get('page1.php').success(function(html) {
        $('#page1').html(html);
    });
    $.get('page2.php').success(function(html) {
        $('#page2').html(html);
    });
}
</script>

<div id="page1"></div>
<div id="page2"></div>
于 2013-03-03T07:08:21.363 に答える
0

他の人が言ったように、jQuery を使用して HTML スニペットをdiv. 既に完全な HTML ドキュメントがあるため、読み込むテキストは完全な HTML ドキュメントではなく、最初に に読み込んだ場合に必要な HTML だけにする必要がありますdiv

質問とは関係ありませんが、アドバイスをいただけないでしょうか。- 役に立つかもしれません。アプリケーションがより複雑になるにつれて、ロジックとプレゼンテーション コードを分離した方がすっきりしていることがわかります。最初から前者を PHP ドキュメントの先頭に配置し、後者を最後に配置するだけです。PHP についてさらに学習するにつれて、これらを個別のファイルとして保持し、require_once.

こうやってみると、ロジックとテンプレートでPHPの書き方が違うことがわかります。テンプレートの場合、各 PHP ステートメントを単一の PHP ブロックに保持すると、基本的にドキュメントは HTML のままになります。これはより簡潔で、IDE 内での構文の色分けとタグの検証を利用するのに役立ちます。したがって、私はあなたのテンプレートをこのように書きます:

<?php
// Move this 'logic' code out of the way of your view layer
// Here, the brace form of loops is preferred
// Ideally it'd get moved to a different file entirely
$con = mysqli_connect("localhost","root","","collofnursing");
mysql_select_db("collofnursing");
$res = mysqli_query($con,"select * from condwetreat");

?><html>
<head>
    <title> Conditions We Treat </title>
</head>
<body>
    <!-- The PHP 'tags' are now easier to indent -->
    <!-- So use while/endwhile, foreach/endforeach etc -->
    Hi
    <?php while($row = mysqli_fetch_array($res)): ?>
        <!-- So it's HTML to style stuff, rather than putting
             HTML tags into PHP echo statements :) -->
        <p class="symptom">
            <?php echo $row['symptom'] ?>
        </p>
    <?php endwhile ?>
</body>
</html>
于 2013-03-03T07:20:54.943 に答える
0

AJAX を使用してページをロードする jQuery .load() 関数を使用することをお勧めします。

リンクはこちら!

于 2013-03-03T07:00:57.793 に答える