Note that there are some explanatory texts on larger screens.

plurals
  1. POarray from php to JavaScript
    primarykey
    data
    text
    <p>i am trying to transfer a array list from php to javascript with json, but it does not work.</p> <p>JS:</p> <pre><code>$.ajax({ url: 'getProfilePhotos.php', type: 'post', // post or get method data: {}, // if you need to pass post/get parameterds you can encode them here in JSON format dataType: 'json', // the data type you want returned... we will use json success: function(responseData) { var arrayList[0] = new Array(); var lung = arrayList.length; for(var i = 0; i&lt;lung; i++) //arrayList[i] = responseData.i; console.log(responseData.i); }}); </code></pre> <p>PHP:</p> <pre><code>&lt;p&gt; &lt;?php $array = array(); $nr = count($friends['data']); for($i = 0; $i &lt; $nr; $i++){ $array = 'link'=&gt;array("http://graph.facebook.com/".$friends['data'][$i]['id']."/picture"); ?&gt; &lt;img src="http://graph.facebook.com/&lt;?php echo $friends['data'][$i]['id'] ?&gt;/picture" /&gt; &lt;?php } header('Content-type: application/json'); echo json_encode($array); ?&gt;&lt;/p&gt; </code></pre> <p><strong>Update for Christopher McCann</strong></p> <p>i have got a error in console. this is the error.</p> <p>[02:46:21.281] missing } after property list @ <a href="http://romanager.ro/api/examples/script.js:3" rel="nofollow">http://romanager.ro/api/examples/script.js:3</a></p> <p>line 3 in script.js is</p> <pre><code>type: 'post', // post or get method </code></pre> <p>In fact i want to get from facebook profile photos. with php script i managed to get photos, but i can transfer ids from php to javascript. if you need i will try to write entire php script and javascript files.</p> <p><strong>Update</strong></p> <p>still have problems with these scripts. in php script i do and authentification of user on facebook, because i need for user ID from facebook to get ids of his friends. to make login i need to create html in php script. well i will post the code of my scripts and i hope you will help me.</p> <p>PHP script:</p> <pre><code> &lt;?php require '../src/facebook.php'; // Create our Application instance (replace this with your appId and secret). $facebook = new Facebook(array( 'appId' =&gt; '137061043024243', 'secret' =&gt; '619c4dc94343584eb7792ae9933978c9', 'cookie' =&gt; true, )); // We may or may not have this data based on a $_GET or $_COOKIE based session. // // If we get a session here, it means we found a correctly signed session using // the Application Secret only Facebook and the Application know. We dont know // if it is still valid until we make an API call using the session. A session // can become invalid if it has already expired (should not be getting the // session back in this case) or if the user logged out of Facebook. $session = $facebook-&gt;getSession(); $me = null; // Session based API call. if ($session) { try { $uid = $facebook-&gt;getUser(); $me = $facebook-&gt;api('/me'); $friends = $facebook-&gt;api('/me/friends'); } catch (FacebookApiException $e) { error_log($e); } } // login or logout url will be needed depending on current user state. if ($me) { $logoutUrl = $facebook-&gt;getLogoutUrl(); } else { $loginUrl = $facebook-&gt;getLoginUrl(); } // This call will always work since we are fetching public data. $naitik = $facebook-&gt;api('/naitik'); ?&gt; &lt;!doctype html&gt; &lt;html xmlns:fb="http://www.facebook.com/2008/fbml"&gt; &lt;head&gt; &lt;title&gt;php-sdk&lt;/title&gt; &lt;style&gt; body { font-family: 'Lucida Grande', Verdana, Arial, sans-serif; } h1 a { text-decoration: none; color: #3b5998; } h1 a:hover { text-decoration: underline; } &lt;/style&gt; &lt;/head&gt; &lt;body&gt; &lt;!-- We use the JS SDK to provide a richer user experience. For more info, look here: http://github.com/facebook/connect-js --&gt; &lt;div id="fb-root"&gt;&lt;/div&gt; &lt;script&gt; window.fbAsyncInit = function() { FB.init({ appId : '&lt;?php echo $facebook-&gt;getAppId(); ?&gt;', session : &lt;?php echo json_encode($session); ?&gt;, // don't refetch the session when PHP already has it status : true, // check login status cookie : true, // enable cookies to allow the server to access the session xfbml : true // parse XFBML }); // whenever the user logs in, we refresh the page FB.Event.subscribe('auth.login', function() { window.location.reload(); }); }; (function() { var e = document.createElement('script'); e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; e.async = true; document.getElementById('fb-root').appendChild(e); }()); &lt;/script&gt; &lt;?php if ($me): ?&gt; &lt;a href="&lt;?php echo $logoutUrl; ?&gt;"&gt; &lt;img src="http://static.ak.fbcdn.net/rsrc.php/z2Y31/hash/cxrz4k7j.gif"&gt; &lt;/a&gt; &lt;?php else: ?&gt; &lt;div&gt; Using JavaScript &amp;amp; XFBML: &lt;fb:login-button&gt;&lt;/fb:login-button&gt; &lt;/div&gt; &lt;div&gt; Without using JavaScript &amp;amp; XFBML: &lt;a href="&lt;?php echo $loginUrl; ?&gt;"&gt; &lt;img src="http://static.ak.fbcdn.net/rsrc.php/zB6N8/hash/4li2k73z.gif"&gt; &lt;/a&gt; &lt;/div&gt; &lt;?php endif ?&gt; &lt;?php $array = array(); $nr = count($friends['data']); echo $nr; for($i = 0; $i &lt; $nr; $i++) { $array[$i] = "http://graph.facebook.com/".$friends['data'][$i]['id']."/picture"; } header('Content-type: application/json'); echo json_encode($array); ?&gt; &lt;/body&gt; &lt;/html&gt; JAVASCRIPT $.post("getProfilePhotos.php", function(data) { alert(data); console.log(data);/*DO WHAT YOU WANT WITH DATA HERE*/}, "json"); window.onload = init; function init() { if (window.Event) { document.addEventListener("mousemove", getCursorXY("mousemove"), false); var cursorXX = 0; var cursorYY = 0; var cursorX = document.getElementById("cursorX"); var cursorY = document.getElementById("cursorY"); cursorX.innerHTML = cursorXX; cursorY.innerHTML = cursorYY; } //initializare canvas1 canvas = document.getElementById('game'); //coordonatele unde se afla mouseul canvas.onmousemove = getCursorXY; //initializare canvas2 canvas2 = document.getElementById('teroristi'); //coordonatele unde se afla mouseul canvas2.onmousemove = getCursorXY; //lista de inamici lista = new Array(); initial(); for(var j = 0; j &lt; 20; j++) for(var k = 0; k &lt; 2;k++) console.log(matx[j][k]);// = -1000; scor = 0; viata = 5; //creerea contextului de desenare 2D ctx2 = canvas2.getContext("2d"); ctx = canvas.getContext("2d"); //creerea unui obiect imagine img = new Image(); img.src = 'glont.png'; imgTerorist = new Image(); imgTerorist.src = 'terorist.jpg'; ctx.beginPath(); ctx.stroke(); imgviata = new Image(); imgviata.src = 'vieti.png'; //score(); viataF(); } //initializeaza matricea de aparitii function initial(){ matx = new Array(24); for (var m = 0; m &lt;24; m++) matx[m] = new Array(3); for(var m = 0; m &lt; 24; m++) matx[m][2] = 0; matx[0][0] = 20; matx[0][1] = 20; for(var m = 1; m &lt; 6; m++){ matx[m][0] = matx[m-1][0] + 80; matx[m][1] = matx[m-1][1]; } matx[6][0] = matx[0][0]; matx[6][1] = matx[0][1] + 120; for(var m = 7; m &lt; 12; m++){ matx[m][0] = matx[m-1][0] + 80; matx[m][1] = matx[m-1][1]; } matx[12][0] = matx[0][0]; matx[12][1] = matx[0][1] + 240; for(var m = 13; m &lt; 18; m++){ matx[m][0] = matx[m-1][0] + 80; matx[m][1] = matx[m-1][1]; } matx[18][0] = matx[0][0]; matx[18][1] = matx[0][1] + 360; for(var m = 19; m &lt; 24; m++){ matx[m][0] = matx[m-1][0] + 80; matx[m][1] = matx[m-1][1]; } } function getCursorXY(e) { //se ia pozitia de pe axa x al cursorului cursorXX = (window.Event) ? e.pageX : event.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft); //se ia pozitia de pe axa y al cursorului cursorYY = (window.Event) ? e.pageY : event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop); // var cursorX = document.getElementById("cursorX"); var cursorY = document.getElementById("cursorY"); cursorX.innerHTML = cursorXX; cursorY.innerHTML = cursorYY; } function Nr(){ return Math.floor(Math.random()*24); } //stergerea inamicului function sterge(x){ //setTimeout("genereaza(flag)",3000); var img = ctx.createImageData(60, 100); for (var i = img.data.length; --i &gt;= 0; ) img.data[i] = 0; ctx.putImageData(img, matx[x][0], matx[x][1]); matx[x][2] = 0; } //genereaza inamici function genereaza(flag){ if(flag == 1){ setTimeout("genereaza(flag)", 2000); var x = Nr(); terorist(x); if(lista.length &gt; 3){ viata = viata - 1; sterge(lista[0]); lista.splice(0, 1); viataF(); } } } //creeaza un inamic function terorist(x){ console.log("X primit = " + x + "valoarea flagului = " + matx[x][2]); //sterge(x); if(matx[x][2] == 0){ ctx.drawImage(imgTerorist,matx[x][0],matx[x][1]); matx[x][2] = 1; lista.push(x); } else if(matx[x][2] == 1){ var q = Nr(); console.log("in recursie: " + q); terorist(q); } } function viataF(){ var remove = ctx2.createImageData(20,20); for (var i = remove.data.length; --i &gt;= 0; ) remove.data[i] = 0; ctx2.putImageData(remove, 10, (10+(viata*20))); console.log(viata); for(var m = 0; m &lt; viata; m++) ctx2.drawImage(imgviata,10,(10+(m*20))); } function impuscat(){ var shootX = cursorXX; var shootY = cursorYY; var tm = 0; console.log("ShootX = " + shootX + " ShootY = " + shootY); for(var m = 0, tm = lista.length; m &lt; tm; m++){ if(shootX &gt;= matx[lista[m]][0] &amp;&amp; shootX &lt;= matx[lista[m]][0] + 60 &amp;&amp; shootY &gt;= matx[lista[m]][1] &amp;&amp; shootY &lt;= matx[lista[m]][1] + 100){ sterge(lista[m]); lista.splice(m, 1); scor = scor + 10; console.log("IMPUSCAT"); } } } function glont(x, y){ ctx.beginPath(); ctx.stroke(); ctx.drawImage(img,x-40,y-40); impuscat(); } function mouse(){ impuscat(); /*console.log('Maus apasat'); console.log(cursorXX); console.log(cursorYY);*/ //glont(cursorXX, cursorYY); //console.log("Dupa glont()"); } function start(){ viataF(); flag = 1; genereaza(flag); setTimeout("stop()", 10000); } function stop(){ ctx2.fillStyle = '#000000'; ctx2.strokeStyle = '#FFFFFF'; ctx2.font = 'bold 30px sans-serif'; ctx2.fillText ('TIMPUL A EXPIRAT!', 100, 200); ctx2.fillText('Scorul tau este: ' + scor, 100, 235); console.log("TIMPUL A EXPIRAT"); flag = 0; genereaza(flag); } function score(){ ctx2.fillStyle = '#000000'; ctx2.strokeStyle = '#FFFFFF'; ctx2.font = 'bold 15px sans-serif'; ctx2.fillText('Scorul tau este: ', 350, 20); } </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload