Pb de code php dans javascript

nacer183 Messages postés 20 Statut Membre -  
wolfgyone Messages postés 3 Statut Membre -
bonjour, j'ai un pb lorsque j'insère un code php dans le code javascript par exemple:
<script>
var obj = new AW.UI.Grid;
obj.setCellData([<?php
for($i=0;$i<4;$i++){
echo'[';
for($j=0;$j<4;$j++){
print """;
echo $tab[$i][$j];
print """;
if($j!=3) echo',';
}
echo ']';
if($j!=3) echo',';
}
?>]);
.
.etc
il m'affiche la boite d'alert (erreur de script), sachant que j'utilise le wamp 5 (php5,MySQL5,apache2)est-ce-qu'il y a des modification dans php pour qu'il marche? je besoin d'une réponse dans le plus courte durée,merci
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. rasta67
     
    bonjour,

    pas possible de faire du php dans javascript

    php executé sur le serveur
    javascript chez le client
    2
  2. sp4tz
     
    Salut,,

    écrit ton code javascripte dans un echo php:

    <?php echo "
    <script>
    var obj = new AW.UI.Grid;
    obj.setCellData([
    for($i=0;$i<4;$i++){
    echo'[';
    for($j=0;$j<4;$j++){
    print \"\"\";
    echo $tab[$i][$j];
    print \"\"\";
    if($j!=3) echo',';
    }
    echo ']';
    if($j!=3) echo',';
    }
    ]); "; ?>
    0
  3. wolfgyone Messages postés 3 Statut Membre
     
    Si tu as vraiment besoin d exécuter du php dans du javascript recherche l'objet XHR

    regardes ici

    function showResultsTableRight()
    {
    //alert("xhr_url = "+xhr_url);
    //alert("enter showResultsTableRight");
    // 1. catch dynamic data from server thanks to Ajax
    // 1.1 clear area before displaying result(s)
    document.getElementById("resultsTableDiv").innerHTML = null;

    // 1.2 collect data to do correct operation in db
    var act = 'getrightlist';
    var dataArray = collectSearchFormDataRight();
    var data = "act="+act+"&label="+dataArray[0];

    // 1.3 use xmlhttprequest object
    var xhr_object = GetXmlHttpRequest();

    // 1.4 open 'facade' file to access data (via an object)
    xhr_object.open("POST", "/efstc/dev/php/facade/Facade_right.php", true);

    // 1.5 server is ready
    xhr_object.onreadystatechange = function()
    {
    /*if(xhr_object.readyState == 4 && xhr_object.status == 200)
    {
    //alert(xhr_object.responseText);
    document.getElementById("resultsTableDiv").innerHTML = xhr_object.responseText;
    }*/

    // waiting until request is achieved
    if((xhr_object.readyState == 1) ||(xhr_object.readyState == 2) || (xhr_object.readyState == 3))
    document.getElementById("resultsTableDiv").innerHTML = 'LOADING...';
    // now we can read server response
    else if(xhr_object.readyState == 4)
    {
    if(xhr_object.status == 200) // continue only if HTTP status is 'OK'
    document.getElementById("resultsTableDiv").innerHTML = xhr_object.responseText;
    else // display error message
    alert('in js_user.js file\nThere was a problem retrieving the data:\n'+xhr_object.statusText);
    }
    }

    xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); // mandatory if method = POST

    // 2. send data to server
    xhr_object.send(data); // in case of method = POST

    // 3. display div which is in charge of results table
    document.getElementById("resultsTableDiv").style.visibility = "visible";
    }
    0