Прошу прощения, но я у себя в скрипте начал "срать"... Может накинете какой-то учебник, хочу посмотреть как правильно систематизировать код, а то раскидано всё, ничего уже не понимаю и найти толком немогу=\
разбей весь код на отдельные логические блоки. каждый блок, по возможности выдели в отдельные функции. например -получить страницу -парсить страницу -обработка полученных данных, подготовка к отображению -отображение данных на странице и в таком духе
Строка с яваскрипт кода Код (Text): so.addParam("FlashVars", "filename=http://qwas.sa/qw/radio/"); Заменил Код (Text): so.addParam("FlashVars", <? echo $filename ?>); Теперь яваскрипт не работает, подскажите плз как правильно вставить переменную в яваскрипт
Да я злодей=) Заработало:Р Код (Text): so.addParam("FlashVars", "filename=<? echo $filename;?>"); Необратил внимания на "filename=..."
Комрады, я наверно Вас уже немного достал, но всё-же...=) Есть страница с новостью на сайте. На странице есть пхп код с айпишкой, портом и ещё парочкой переменных, которые нужно отправить на обработчик и вернуть уже обработаные данные. Вопрос такой если отправлять запрос ГЕТ или ПОСТ то как реализовать обратную отправку данных не обновляя страницу? И можно ли эти переменные и обработаные данные как-то отправлять туда-сюда через куки??? Буду признателен.
Это значит если я отправлю запрос на ту страницу через гет, как я получу обработанные данные с обработчика НЕ обновляя страницу?
это не связанные вещи. но да, гет и пост и урл - они будут доступны для обработки внутри скрипта. этого и только этого экземпляра скрипта. А уж что он с ними сделает - вот это вопрос.
Ладно, давай закроем оффтоп. лучше подскажи или напиши=) скрипт такой<-это я так ЗАчеркнул текст=) Не ну реально я незнаю как воплотить мою мысль... Обьясню что мне нужно ещё раз: Есть страница №1, на которой до 5 переменных Есть страница №2, которая должна получить переменные с страницы №1 и отправить обработанные переменные (около десятка) назад на страницу №1 Условие: страницы не должы обновлятся\перезагружатся и т.д.
вот тут надо понять, что ты имеешь в виду. просто вывести какой-то текст на экран? и у тебя две страницы. тут они будут "перезагружаться". т.е. ты на первой странице кнопку нажмешь и уйдешь на вторую
topas я ajax к сожелению незнаю.=( но уже понял что нужно на нём писать igordata неужели я так сложно описал ситуацию? На странице у меня новость и яваскрипт. что б сработал яваскрипт нужно получить ссылку на сгенерированый файл, в котором лежит вся инфа о станции. Поетому что б был сгенерирован файл нужно передать 3 переменные: айпи, порт и номер станции, а получить переменную с ссылкой на файл, переменную битрейт, переменную количества слушателей и переменную текущего трека
ты написал "две страницы", потом говоришь "без перезагрузки". Ты не используешь привычные термины, а те что используешь - то с ошибками. Конечно, я пытаюсь понять, что именно ты хочешь, и начерта тебе "без перезагрузки". почему б не сделать с перезагрузкой? они что каждый раз разные? почему нельзя их сгенерить один раз на всю жизнь?
Кароче суть такая, есть 2 файла 1.php и 2.php 1.php Код (Text): <? $a = 2; $b = 8; echo $c; ?> Результат выполнения страницы №1 Код (Text): 16 2.php Код (Text): <? $c = $a * $b; ?> Вопрос: как с 1 файла отправить на второй переменные а и б, вернуть результат с и вывести на екран, при этом не перезагружая страницы??? Добавлено спустя 52 минуты 36 секунд: Всё, я понял, на ajax я точно не напишу=( Мужики, нужно с страницы 1 отправить $ip $port $number на файл php и на эту же страницу получить $filename Поможете? Вот кое-что нашёл Код (Text): $(document).ready(function(){ function AjaxResultat(_data,_blres){ $.ajax({ type:'POST', url:'ajax_object.php', data:_data, cache:false, success:function(resultat){ $('.info_'+_blres).html(resultat).show(); } }); return false; } $('input[name=btn_object]').click(function(){ var data = {'func':'object','photo_now':'<?=$_SESSION["photo_now"]?>'}; AjaxResultat(data,'object'); } }); }); Код (Text): <?php if(isset($_POST['func']) && $_POST['func']=='object'){ echo '<p>AJAX запрос выполнен</p>'; echo '<p>SESSION["photo_now"]='.$_POST["photo_now"].'</p>'; } ?> Но изменить под себя немогу ибо мозги взрываются... вообще 0=(
Я не понимаю тебя, правда. У тебя в другом файле есть функция или там код. Засунь в фунцию и вызови из первого файла.
Прости. Я всё. Ты даешь слишком мало информации. Вызывать можно как угодно. Но просто пока я не вижу причин чтото там вызывать.
да запиши значения переменных в файл. и читай их. хоть из первой хоть из второй страницы. и выводи сразу результат вычислений. без перезагрузки. без смс. смотреть до конца ...
есть у меня 10 страниц 1.php, 2.php, 3.php, 4.php, 5.php, 6.php, 7.php, 8.php, 9.php, ice.php На странице 1.php код Код (Text): <? $ip = 192.168.1.1; $port = 8000; $number = 22; echo $filename ?> И так все страницы до 8 А у ice.php код Код (Text): <?$filename = $ip.":".$port."/".$number; ?> Я уже сам понять немогу куда проще обьяснить... Если пример кода не прокатывает... Как вариант дайте кто-то icq я кину исходники посмотрите Добавлено спустя 17 минут 7 секунд: Кароче вот страница которая отсылает 3 переменных и принимает 1 без перезагрузок\обновлений страницы Код (Text): <script type="text/javascript" src="http://qwas.sa/qw/radio/swfobject.js"></script> <div id="energy2">Установите<a href = http://get.adobe.com/flashplayer/>Flash player</a> </div> <script type="text/javascript"> var so = new SWFObject("http://qwas.sa/qw/radio/energy2.swf", "pl1", "180", "75", "8"); so.addParam("menu", "true"); so.addParam("wmode", "transparent"); so.addParam("allowScriptAccess", "sameDomain"); so.addParam("FlashVars", "filename=<? echo $filename;?>"); so.write("energy2"); </script> А вот страница которая принимает переменные и отправляет назад одну Код (Text): <?php header('Content-Type: text/html;charset=windows-1251'); /////////////////////////////////////////////////// //icecast2 status refined v1.1 xsl refined // Author: that dude over there at casterclub.com // Bugs: post in the forums at casterclub ////////////////////////////////////////////////// //start the madness already if($_POST['one'] AND $_POST['two']){ echo $_POST['one']*$_POST['two'];} ////////////////////////////////////////////////// //start the configurations $ip = "cast.europaplus.ua"; //your server address in the form of mydomain.com or 192.161.1.1 $port = "8000"; //the port of your server $ice2_station = "станция"; // your station or stream name $STAT = 10; $STATN = $STAT - 1; // Устанавливаем Cookie 'test' со значением 'Hello' на один час: setcookie("test","Hello",time()+3600); // При следующем запросе скрипта выводит 'Hello': echo @$_COOKIE['test']; ////////////////start the parsin action\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ //opening socket $fp = fsockopen($ip, $port, &$errno, &$errstr, 30); //open connection if(!$fp) { $success=2; //set if no connection //edit html to fit your stations site, this display is for offline status echo'<table> <tr> <td width="100%" colspan="2"> <img border="0" src="images/offline.gif" width="22" height="22"> <b><font face="Arial" size="2" color="#FF0000">'.$ice2_station.' is currently offline</font></b></td> </tr> </table>'; } if($success!=2){ //if connection fputs($fp,"GET /status.xsl HTTP/1.0\r\nUser-Agent: Icecast2 XSL Parser (Mozilla Compatible)\r\n\r\n"); //get status2.xsl while(!feof($fp)) { $page .= fgets($fp, 1000); } fclose($fp); //close connection $page = preg_replace("/.*<pre>/", "", $page); //extract data $page = preg_replace("/<\/pre>.*/", "", $page); //extract data $numbers = explode("</table>",$page); //bomb it and extract data } $information = explode("</td>", $numbers[$STAT]); $masivS = array(); $masivS[0] = '/\n/'; $masivS[1] = '/<td class="streamdata">/'; $nameS = $information[1]; $nameS = preg_replace($masivS, "", $nameS); $descriptS = $information[3]; $descriptS = preg_replace($masivS, "", $descriptS); $formatS = $information[5]; $formatS = preg_replace($masivS, "", $formatS); $bitrateS = $information[9]; $bitrateS = preg_replace($masivS, "", $bitrateS); $listenS = $information[11]; $listenS = preg_replace($masivS, "", $listenS); $peaklistS = $information[13]; $peaklistS = preg_replace($masivS, "", $peaklistS); $songS = $information[19]; $songS = preg_replace($masivS, "", $songS); $songS = iconv("UTF-8", "ISO-8859-1", $songS); $songS = mb_convert_encoding ($songS ,"Windows-1251" , "UTF-8" ); echo 'Имя: '.$nameS.'<br>'; echo 'Формат: '.$formatS.'<br>'; echo 'Битрейт: '.$bitrateS.'<br>'; echo 'Слушателей: '.$listenS.'<br>'; echo 'Песня: '.$songS; // The End of station and Start of player $in = explode("/", $numbers[$STATN]); $in[9] = preg_replace("/</", "", $in[9]); //extract data $in = $in[9]; //The END of name station small simvols $filename = './station/'.$in.'/'; if (file_exists($filename)) { } else { mkdir($filename, 0700);} if (file_exists($filename."enconfig.txt")) { $JSfileS = file_get_contents($filename."enconfig.txt"); // Вывести данные из файла в переменную $JSfileSArray = explode("]", $JSfileS); $JSfileSArrayName = explode("[", $JSfileSArray[2]); //название станции ссылка вида http://cast.europaplus.ua/europaplus $JSfileSArrayStream = explode("[", $JSfileSArray[3]); //стрим ссылка вида http://cast.europaplus.ua:8000/?mount=/avtoradio $JSfileSArrayStat = explode("[", $JSfileSArray[4]); //стрим ссылка вида http://cast.europaplus.ua:8000/?mount=/avtoradio $JSfileSArrayName[0] = 'http://'.$ip.'/'.$in; $JSfileSArrayStream[0] = 'http://'.$ip.':'.$port.'/?mount=/'.$in; $JSfileSArrayStat[0] = 'http://'.$ip.':'.$port.'/?mount=/'.$in; $JSfileSArray[2] = "\r\n".$JSfileSArrayName[0]."\r\n\r\n[".$JSfileSArrayName[1]; $JSfileSArray[3] = "\r\n".$JSfileSArrayStream[0]."\r\n\r\n[".$JSfileSArrayStream[1]; $JSfileSArray[4] = "\r\n".$JSfileSArrayStat[0]."\r\n\r\n[".$JSfileSArrayStat[1]; $JSfileS = $JSfileSArray[0]."]".$JSfileSArray[1]."]".$JSfileSArray[2]."]".$JSfileSArray[3]."]".$JSfileSArray[4]."]".$JSfileSArray[5]."]".$JSfileSArray[6]."]".$JSfileSArray[7]; $handle = fopen($filename."enconfig.txt","w+"); // Открыть файл, сделать его пустым fwrite($handle,$JSfileS); // Записать переменную в файл fclose($handle); // Закрыть файл } else { //[server] icecast [link_stream] http://cast.europaplus.ua/avtoradio [link_statistic_stream] http://cast.europaplus.ua:8000/?mount=/avtoradio [link_statistic_nonstop, "no" - off_nonstop] http://cast.europaplus.ua:8000/?mount=/avtoradio [autorun] yes [style] 1 [start_volume] 100 } echo '<h1>'.$filename.'</h1>'; $chirik = 'http://qwas.sa/qw/radio/'; ?>
Вопрос не в том, что у тебя есть. Я говорю что так не надо делать. А ты упорно хочешь делать именно так. =)