IFrame (Передача переменных в другой php)

Готовые уроки IFrame + ВКонтакте API
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

IFrame (Передача переменных в другой php)

Сообщение Влад »

Для меня в ближайшие 2 месяца была очень большая проблема, терялись переменные и если на пример я переходил с одного файла php на другой то на другой странице просто не мог определить user_id - он пропадал и соответственно приложение не имело такой вид который должно было иметь от сути к делу:
Создаем файл 1.php

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

 <a  href="2.php?api_url=<?php echo $_GET['api_url'];?>&api_id=<?php echo $_GET['api_id'];?>&api_settings= <?php echo $_GET['api_settings'];?>&viewer_id=<?php echo $_GET['viewer_id'];?>&sid=<?php echo $_GET['sid'];?>&secret=<?php echo $_GET['secret'];?>&user_id=<?php echo $_GET['user_id'];?>&group_id=<?php echo $_GET['group_id'];?>&is_app_user= <?php echo $_GET['is_app_user'];?>&auth_key=<?php echo $_GET['auth_key'];?>&language=<?php echo $_GET['language'];?>&parent_language=<?php echo $_GET['parent_language'];?>&lc_name=<?php echo $_GET['lc_name'];?>"><b>Передача переменных в другой файл</b></a> <br><br><a herf="2.php">Переход с утерей переменных</a> 
Создаём файл 2.php

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

<html><head><!-- подключаем xd_connection.js --><script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script> <script type="text/javascript" charset="cp1251" >window.onload = (function() {   // когда загрузится вся страница    VK.init(function() {    // инициализируем Vk API     // узнаём flashVars, переданные приложению GET запросом. Сохраняем их в переменную flashVars    var parts=document.location.search.substr(1).split("&");    var flashVars={}, curr;    for (i=0; i<parts.length; i++) {        curr = parts[i].split('=');        // записываем в массив flashVars значения. Например: flashVars['viewer_id'] = 1;        flashVars[curr[0]] = curr[1];    }       // получаем viewer_id из полученных переменных    var viewer_id = flashVars['viewer_id'];     // выполняем запрос получения профиля    VK.api("getProfiles", {uids:viewer_id,fields:"photo_big"}, function(data) {        // обрабатываем полученные данные        // выводим имя и фамилию в блок user_info        document.getElementById('user_info').innerHTML = data.response[0].first_name + ' ' + data.response[0].last_name + '<br />';        // создаем img, для отображения аватарки        var image=document.createElement('img');        // из полученных данных берем ссылку на фото        image.src=data.response[0].photo_big;        // добавляем img в блок user_info        user_info.appendChild(image);    });     });});</script></head><body><div id="user_info">http://flapps.ru</div></body></html>
Сильно ногами не бейте, возможно кто-то и раньше это умел и знал, и мне не рассказывал =)
Аватара пользователя
Doker
Модератор
Модератор
Сообщения: 1026
Зарегистрирован: 07 май 2010, 18:53

Re: I-frame (Передача переменных в другой php)

Сообщение Doker »

Непонял. Где во 2.пхп бращение к 1.пхп?
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Re: I-frame (Передача переменных в другой php)

Сообщение Влад »

Из 1.php переходит user_id к 2.php Ты попробуй сделай обычный переход без передачи переменных и посмотри что у тебя получится
danco
Сообщения: 7
Зарегистрирован: 24 июн 2011, 21:20

Re: IFrame (Передача переменных в другой php)

Сообщение danco »

Можно еще получить полный url и реулярным выражением обрезать весь GET запрос в одну строку.
Tairesh
Сообщения: 30
Зарегистрирован: 29 июн 2011, 10:12

Re: IFrame (Передача переменных в другой php)

Сообщение Tairesh »

Пишем в файле config.php (все же его используют?)

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

$url = '?api_url='.$_GET['api_url'].'&api_id='.$_GET['api_id'].'&api_settings='.$_GET['api_settings'];$url .= '&viewer_id='.$_GET['viewer_id'].'&sid='.$_GET['sid'].'&secret='.$_GET['seсret'];$url .= '&user_id='.$_GET['user_id'].'&group_id='.$_GET['group_id'].'&is_app_user=';$url .= $_GET['is_app_user'].'&auth_key='.$_GET['auth_key'].'&language='.$_GET['language'];$url .= '&parent_language='.$_GET['parent_language'].'&lc_name='.$_GET['lc_name']; 
Инклудим конфиг

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

include 'config.php';
И к каждой ссылке с помощью echo прибавляем этот $url

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

<a href='page1.php<? echo $url ?>'>Страница 1</a><a href='page2.php<? echo $url ?>'>Страница 2</a><a href='page3.php<? echo $url ?>'>Страница 3</a>
То же самое что в уроке только немного удобнее ;)
octyabrist
Сообщения: 26
Зарегистрирован: 03 дек 2011, 12:27

Re: IFrame (Передача переменных в другой php)

Сообщение octyabrist »

Tairesh писал(а):Пишем в файле config.php (все же его используют?)

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

$url = '?api_url='.$_GET['api_url'].'&api_id='.$_GET['api_id'].'&api_settings='.$_GET['api_settings'];$url .= '&viewer_id='.$_GET['viewer_id'].'&sid='.$_GET['sid'].'&secret='.$_GET['seсret'];$url .= '&user_id='.$_GET['user_id'].'&group_id='.$_GET['group_id'].'&is_app_user=';$url .= $_GET['is_app_user'].'&auth_key='.$_GET['auth_key'].'&language='.$_GET['language'];$url .= '&parent_language='.$_GET['parent_language'].'&lc_name='.$_GET['lc_name']; 
Инклудим конфиг

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

include 'config.php';
И к каждой ссылке с помощью echo прибавляем этот $url

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

<a href='page1.php<? echo $url ?>'>Страница 1</a><a href='page2.php<? echo $url ?>'>Страница 2</a><a href='page3.php<? echo $url ?>'>Страница 3</a>
То же самое что в уроке только немного удобнее ;)


А как создать этот файл??? config.php
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: IFrame (Передача переменных в другой php)

Сообщение Александр »

octyabrist
А чем ты php скрипты создаешь? Вот так же и создай.
Аватара пользователя
boombast1k
Сообщения: 332
Зарегистрирован: 23 июн 2011, 07:31

Re: IFrame (Передача переменных в другой php)

Сообщение boombast1k »

о ужас
octyabrist
Сообщения: 26
Зарегистрирован: 03 дек 2011, 12:27

Re: IFrame (Передача переменных в другой php)

Сообщение octyabrist »

boombast1k писал(а):о ужас
ты свои комментарии оставь при себе и повторяй их во сне при необходимости XD Форум и данная тема созданы для того чтобы помочь людям, которые создают приложения, что то еще не умеют, не совсем знают и спрашивают. А писать не по теме пустышки иди тупо в чат какой нибудь)
Аватара пользователя
boombast1k
Сообщения: 332
Зарегистрирован: 23 июн 2011, 07:31

Re: IFrame (Передача переменных в другой php)

Сообщение boombast1k »

Ты прежде чем на форуме что-то писать правила бы почитал.
Если ты не можешь один файл куда тебе до программирования?
Я не буду тебя оскорблять или еще что то тут писать как это сделал и окажусь умнее... Я то старше и не должен обращать внимание на таких как ты.
6. Если вы не знаете программирования и хотите просто получить готовое решение, то большого смысла задавать этот вопрос на этом форуме нет.
Этот форум не в формате: "Сделайте для меня бесплатно и выложите мне исходник".
Если вы что-то делаете сами и у вас не получается, то только в этом случае вы можете ждать помощи, в виде совета.
Многие люди зарабатывают на создании приложений не малые деньги, никто не будет вам бесплатно и подробно всё разжевывать.
Вряд ли у вас получиться что-то хорошее, если вы не хотите вникать в суть программирования. Хотите - разбирайтесь. Не хотите - ищите разработчиков и платите им.
Ответить