Hoi,

ik krijg vanuit mijn xmlHttp-request geen antwoord terug hoewel de query gewoon werkt.
Als ik buiten de if een gewone plain text echo, werkt het wel.

Ik ben die myqsli aan het uittesten en heb gekozen voor de prepare-methode.


if(isset($_POST['form']))
{
    $form = $_POST['form'];
    $stmt = $mysqli->prepare('SELECT content FROM tbl_content WHERE formtype = ?');

    $stmt->bind_param('s', $form);
    $stmt->bind_result($content);
    if ($stmt->execute())
    {
        while ( $stmt->fetch() )
        {
            echo $content;
        }
    }
}
Bart C op 02/01/2013 10:36:43

[quote="Not Moose op 02/01/2013 10:26:34"]
Dan krijg je maar 1 return waarde terug, een json array met data


Is mijn return waarde nu geen json array?


[/quote]

Weet ik niet zeker, je echo't namelijk meerdere keren een json string, dus ik vermoed dat je een error krijgt als 'geen geldige json waarde'
Not Moose op 02/01/2013 10:39:18

Weet ik niet zeker, je echo't namelijk meerdere keren een json string, dus ik vermoed dat je een error krijgt als 'geen geldige json waarde'


Ik heb de echo buiten de while gezet. Nu, op zich is het nu wel correct maar het maakt geen verschil, de while-loop kan toch maar maximum één keer doorlopen worden (maximum één enkele record die opgehaald wordt).

Ik heb daarop ook geen enkele foutmelding gehad.

Waarom dan een while lus?

<?php
$result = $stmt->fetch_assoc();
echo json_encode($result);
?>

Maar le question jambon (de hamvraag) blijft: hoe haal ik de waarden uit die array om ze in mijn formuliervelden te plaatsen...

Dit blijkt na lang zoeken, de oplossing te zijn:


function ajaxrequest(str)
{
    $.ajax({
      type: 'POST',
      url: 'responsexml.php',
      datatype: 'json',
      data: { formtype : str, sid : Math.random() }
    }).done(function( msg ){
      xmlDoc = msg;
        var feed = JSON.parse(xmlDoc);
        for (var i = 0; i < feed.length; i++)
        {
            document.getElementById('id').value = feed[i]['id'];
            document.getElementById('formtype').value = feed[i]['formtype'];
            CKEDITOR.instances.editor1.setData(feed[i]['content']);
        }
    })
}

Reageren