1

jquery.post() を適切に動作させるのに非常に苦労しています。すべてが順調に進んでいるようですが、json を画面に表示できません。私はこれに最後の日ほど取り組んでおり、最後の手段としてここに投稿しています. ajax.post についてここに投稿された多くの質問と、多くの良い回答を見ました。ただし、これらの Q&A のほとんどは、単純な変数のエコー バックを扱っていました。つまり、単一の int です。残念ながら、私は配列を扱っているので、同じまたは類似の解決策がうまくいくとは思いません。これは、最初のページに返される php の外観です。このセグメントをページ #2​​ と呼びます。

if (!($stmt = $mysqli->prepare("SELECT id, todos FROM to_do_list WHERE uid =?"))) {
    echo "Prepare failed: (" . $mysqli->errno . ") " . $mysqli->error;
    }

    if (!$stmt->bind_param("s", $_SESSION['SESS_ID'])){
        echo "Binding param failed: (" . $stmt->errno . ") " . $stmt->error;
    }

    if (!$stmt->execute()){
        echo "Execute failed block 2: (" . $stmt->errno . ") " .$stmt->error;
    }
    $stmt->bind_result($id, $todos);
    if ($stmt->store_result()){
        if($stmt->num_rows > 0){
        while($stmt->fetch()){
                  $results[] =  array('id' => $id, 'todos' => $todos);     
        }
        echo json_encode($results);
    }

最初のページ、つまり呼び出しページの関連部分を次に示します。

        <div id="content">


    </div>


    <form title="todosubmitter" id="todoPost" autocomplete="off">
        Add To Do:
        <br>
        <input type="text" name="todo" class="required formStyle error">
        <!--<input type="reset" name="submit" value="Submit" onclick="$.post('dbAccessor.php', $('#todoPost').serialize());"> -->
         <input type="reset" name="submit" value="Submit" onclick="$.post('dbAccessor.php', $('#todoPost').serialize(), function(data) { $('#content').html(data);}, 'json');"> 
    </form>

そこに何を入れても、jsonデータを画面に表示できません。私は多くのことを試しました。失敗。

また。PHPが機能せず、最初のページに何も返さない前に:

[{"id":98,"todos":"asdfa"},{"id":97,"todos":"asdfasdf"},{"id":96,"todos":"adsfasdfadf"},{"id":95,"todos":"asdfasdf"},{"id":94,"todos":"sadfasdf"},{"id":93,"todos":"asdfasdf"},{"id":92,"todos":"adfgadfga"},{"id":91,"todos":"asdfasd"},{"id":90,"todos":"asdfadf"},{"id":89,"todos":"asdfafd"},{"id":88,"todos":"asdf"},{"id":87,"todos":"asdf"},{"id":86,"todos":"asdf"},{"id":85,"todos":"asdf"},{"id":84,"todos":"dfa"},{"id":83,"todos":"asdf"},{"id":82,"todos":"do"},{"id":81,"todos":"asdf"},{"id":80,"todos":"asdf"},{"id":79,"todos":"asdf"}]

私のためにこの謎を終わらせることができる人に、前もって感謝します.

4

0 に答える 0