БД + несколько таблиц

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
Ответить
Аватара пользователя
vitebsk911
Сообщения: 143
Зарегистрирован: 11 июл 2012, 23:09

БД + несколько таблиц

Сообщение vitebsk911 »

Есть беда... кто скажет что не так:

Пользователь запускает приложение, в файле index.php

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

<script src="js/jquery-1.4.2.min.js" type="text/javascript"></script> <script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script><script src="https://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script> <script type="text/javascript" charset="cp1251" >$(document).ready(function(){     VK.init(function() {         var parts=document.location.search.substr(1).split("&");            var flashVars={}, curr;            for (i=0; i<parts.length; i++) {                curr = parts[i].split('=');                flashVars[curr[0]] = curr[1];            }            var viewer_id = flashVars['viewer_id'];    var auth_key = flashVars['auth_key'];      $.post('https://___САЙТ____/iframe_stat.php',                { "viewer_id": viewer_id, "auth_key": auth_key },               function(data){                     $('#result').html(data);            });    }); });</script>
Данные о пользователе передаются в файл iframe_stat.php в нем:

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

<?php// данные доступа к базе данных$db_host="localhost";       // обычно не нужно изменять$db_user="***";        // имя пользователя БД$db_password="***";        // пароль БД$db_name = "***";      // имя БД$table_name = "TABLICA_01";       // имя таблицы статистики. Если вы не меняли его в запросе, создающем БД, то и здесь менять его не надо // данные приложения$app_id = '******'; // id приложения$api_secret = '**********************************'; // защищенный ключ приложения  $auth_key  = $_POST['auth_key'];$viewer_id = $_POST['viewer_id']; $real_key = md5($app_id."_".$viewer_id."_".$api_secret);if ($auth_key == $real_key){    // соединение с БД    mysql_connect($db_host, $db_user, $db_password) or die (mysql_error());    mysql_select_db($db_name) or die (mysql_error());    mysql_query("SET NAMES 'utf8'");     // Выполняем запрос: если пользователя с таким id ещё нет в БД, то добавляем, если есть, то обновляем запись, прибавляя одно посещение (`visits` = (`visits`+1))    $query = 'INSERT INTO `'.$table_name.'` (`uid`, `last_date`) VALUES ("'.$viewer_id.'","'.time().'") ON DUPLICATE KEY UPDATE  `visits` = (`visits`+1), `last_date`="'.time().'";';    $sql = @mysql_query($query);    echo "Ждем...";}?>
Записали пользователя в БД... к ПРИМЕРУ даем пользователю ЧТО-ТО на выбор... просто перейти на страницу 2 или страницу 3, пускай пользователь перешел на страницу 2 там код: что бы так же добавить его на БД НО уже в другую таблицу

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

<script src="js/jquery-1.4.2.min.js" type="text/javascript"></script> <script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script><script src="https://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script> <script type="text/javascript" charset="cp1251" >$(document).ready(function(){     VK.init(function() {         var parts=document.location.search.substr(1).split("&");            var flashVars={}, curr;            for (i=0; i<parts.length; i++) {                curr = parts[i].split('=');                flashVars[curr[0]] = curr[1];            }            var viewer_id = flashVars['viewer_id'];    var auth_key = flashVars['auth_key'];      $.post('https://__________САЙТ________/iframe_stat_01.php',      // имя файла иное             { "viewer_id": viewer_id, "auth_key": auth_key },               function(data){                     $('#result').html(data);            });    }); });</script> 
а в файле iframe_stat_01.php стоит уже запись аналогичным кодом что выше описан, НО в другую таблицу той же базы данных...

1. В первую таблицу запись осуществляется, во вторую НЕТ
2. Если в настройках приложения сделать стартовую страницу: СТРАНИЦА 2 - то запись происходит...

что не так? как это исправить?
XELAD
Сообщения: 205
Зарегистрирован: 17 июл 2012, 05:25

Re: БД + несколько таблиц

Сообщение XELAD »

Вероятно ещё нужно заменить $table_name в php номер 2.
Аватара пользователя
vitebsk911
Сообщения: 143
Зарегистрирован: 11 июл 2012, 23:09

Re: БД + несколько таблиц

Сообщение vitebsk911 »

Разобрался... нужно было просто передать переменные полученные от ВК на первой странице - другой странице
Ответить