Помогите оптимизировать код

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
Ответить
vasXL
Сообщения: 32
Зарегистрирован: 13 ноя 2011, 20:48

Помогите оптимизировать код

Сообщение vasXL »

Вообщем ситуация такая.. Хотелось бы, чтобы люди, которые поопытней, помогли советом. Есть страница со сбором инфы, после которой происходит переход на страницу с результатом. Так вот вторая страница не всегда загружается. Причем такая деталь: Я заметил, что она она не загружается, когда первый раз заходишь с нового компа. Когда потом снова захожу в приложение, она загружается. Из-за чего это может быть?

Код: Выделить всё

// страница сбора данных<body><script src="js/jquery-1.8.3.min.js" charset="windows-1251"></script><script src="//vkontakte.ru/js/api/xd_connection.js" type="text/javascript"></script><script type="text/javascript" charset="cp1251" >window.onload = (function() {VK.init(function() { //идет сбор данных. //отправляются скрипту с заносом в базу массивы: mas1, mas2, и polz_id//и происходит переход на страницу с выводом результата в месте с GET-передачей двух php - переменных $user_id и $pol_t; $.post(vbazy, {res40:mas1,respr40:mas2,fr:res_fr,user_id: polz_id}, function(data) {document.location.href = "rez.php?user_id=<?echo $user_id;?>&pol_an=<?echo $pol_t;?>"; });});// функции сортировки</script> </body>    //страница с выводом результатов<!DOCTYPE html><html><head> <script src="js/jquery-1.8.3.min.js" charset="windows-1251"></script><script src="//vkontakte.ru/js/api/xd_connection.js" type="text/javascript"></script><script type="text/javascript" charset="cp1251" >window.onload = (function() {VK.init(function() {  VK.api("users.get", {fields:"first_name,last_name,photo"}, function(data1) {var polz_id = data1.response[0].uid;  <?phpif (isset($_GET['user_id'])){$user_id = $_GET['user_id'];$pol_t = $_GET['pol_an']; } //соединение с базой данных при помощи функции mysql_connect()$db = mysql_connect("mysql.*******ru","dbu_***","***");//функция mysql_select_db() выбирает текущую //базу данныхmysql_select_db("***" ,$db); mysql_query("SET NAMES utf8"); $result1 = mysql_query ("SELECT rez1,rez2,rez3 FROM rez_m WHERE id_vk=$user_id"); //запрашиваем данные$result2 = mysql_query ("SELECT rez1,rez2,rez3 FROM rez_w WHERE id_vk=$user_id"); $row1 = mysql_fetch_row($result1);$row2 = mysql_fetch_row($result2); $mass1 = unserialize($row1[0]);$mass2 = unserialize($row1[1]);$mass3 = unserialize($row1[2]);$mass4 = unserialize($row2[0]);$mass5 = unserialize($row2[1]);$mass6 = unserialize($row2[2]); $json1 = json_encode($mass1);$json2 = json_encode($mass2);$json3 = json_encode($mass3);$json4 = json_encode($mass4);$json5 = json_encode($mass5);$json6 = json_encode($mass6); mysql_close($db); ?> var pol_an = <?echo $pol_t;?>; if (pol_an == 2) {var css_url = "style33.css";var m1 = <?echo $json1;?>;var m2 = <?echo $json2;?>;var m3 = <?echo $json3;?>; } else if (pol_an == 1) {var css_url = "style35.css";var m1 = <?echo $json4;?>;var m2 = <?echo $json5;?>;var m3 = <?echo $json6;?>;} var count = m1.join(',');VK.api("users.get", {user_ids:count,fields:"first_name,last_name,photo "}, function(data1) { var friends_data1 = data1.response; //здесь еще отправка данных одному скрипту, который нужен в будущем$.post(made_url, {  polz_id: polz_id,r1: m2[0], r2: m2[1], r3: m2[2], r4: m2[3]}, function(data) { }); // вывод результатов в таблицу document.write ('<link rel="stylesheet" type="text/css" href='+css_url+'>'); document.write ('<div class="prokrutka">'+'<table cellspacing="0" cellpadding="3" width="100%" border="0">'+'<thead>');document.write ('<tr>');document.write ('<th><font size="4" color="black">Место</th>');document.write ('<th colspan="2"><font size="4" color="black">пользователь</th>');document.write ('<th><font size="4" color="black"> очки </th>');document.write ('</tr>');document.write ('</thead>');document.write ('<tbody>');  for (var i=0;i<10;i++) {c = i+1;document.write ('<tr>'); document.write ('<td align = "center"><font size="5" color="black">'+c+'</td>');document.write ('<td align = "right"><img src='+friends_data1[i].photo+'></td>');document.write ('<td align = "left"><font size="4" color="black">'+friends_data1[i].first_name+' '+friends_data1[i].last_name+'</td>');document.write ('<td align = "center"><font size="4" color="black">'+m2[i]+'</td>');} document.write ('</tbody>');document.write ('</table>'); document.write ('</div>');  //здесь в конце кнопкаdocument.write('<p><a href="next.php?user_id='+polz_id+'&pol_an='+pol_an +'" class="myButton">продолжить</a></p>');  });});});}); </script></head><body></body></html>
cibersant
Сообщения: 199
Зарегистрирован: 23 окт 2011, 18:34

Re: Помогите оптимизировать код

Сообщение cibersant »

Код: Выделить всё

document.location.href = "rez.php?user_id=<?echo $user_id;?>&pol_an=<?echo $pol_t;?>";
Редирект эта строка,возможно не выполняется function(data) по результату,я бы на твоём месте через прогу чарлез проверил,что возвращает яваскрипт.
XELAD
Сообщения: 205
Зарегистрирован: 17 июл 2012, 05:25

Re: Помогите оптимизировать код

Сообщение XELAD »

Судя по вашему описанию, при первом входе в игру вы запрашиваете данные у сервера на пользователя, которого нет в базе. После сохранения в базу при последующих входах проблем нет.
Ответить