[JavaScript, AJAX] Задай вопрос, получи ответ

Discussion in 'PHP' started by banned, 9 Jun 2007.

Thread Status:
Not open for further replies.
  1. Kridan

    Kridan Member

    Joined:
    2 Jun 2007
    Messages:
    24
    Likes Received:
    8
    Reputations:
    0
    Поставь yes.
     
    1 person likes this.
  2. dokwill

    dokwill New Member

    Joined:
    25 Jun 2007
    Messages:
    21
    Likes Received:
    1
    Reputations:
    0
    непрет
     
  3. TANZWUT

    TANZWUT Крёстный отец :)

    Joined:
    22 Jun 2005
    Messages:
    1,474
    Likes Received:
    716
    Reputations:
    744
    вот мне фишка нравится к примеру как на woweb при переходе с 1 страницы - на другую, для примера http://woweb.ru/load/99-3-10. есть у кого очень простенькие готовые примеры с описанием как реализовать загрузку контента без перезагрузки страницы. желательно ссылки, статьи (RUS) и без флейма ;)
     
    _________________________
  4. vectorg

    vectorg Противоядие

    Joined:
    7 Aug 2005
    Messages:
    335
    Likes Received:
    140
    Reputations:
    236
    Чисто теоретически:

    1) Пишешь пхп-скрипт, который по заданным параметрам выводил бы тебе кусок твоего контента.
    2) Пишешь на js аякс функцию, которая бы этот контент сливала и выводила бы в div(например).
    3) Пишешь страничку со своим div'ом и линками на вызов функции.

    В итоге: страница с div'ом, ссылки на вызов js-ajax ф-ции. Принажатии на линк, посредством js у тебя подгружается контент из пхп и выводится в див.
    Как-то так в 2х словах.

    Пример: http://viyu.jino-net.ru
    Исходники: http://www.mediafire.com/?4mb5u0vmvmh

    Думаю разберешься, в принципе все элементарно..
     
    1 person likes this.
  5. hhover

    hhover Elder - Старейшина

    Joined:
    21 May 2007
    Messages:
    60
    Likes Received:
    36
    Reputations:
    11
  6. gergi

    gergi New Member

    Joined:
    18 May 2007
    Messages:
    8
    Likes Received:
    1
    Reputations:
    0
    Любезно прошу подсказать пару скриптов

    Любезно прошу подсказать кодик как скрыть адресную строку при входе на страницу(сделать во весь экран например), только чтоб скрипт сробатывал с самой страницы, а не с сылки (может кто знает как подменить адресную строку?). И кодик чтоб при нажатии кнопки текст с 2х полей типа input записывался в txt файлик. Заранее благодарен. :)
     
  7. RaiDeRz

    RaiDeRz Elder - Старейшина

    Joined:
    5 Apr 2007
    Messages:
    121
    Likes Received:
    5
    Reputations:
    0
    Вообщем нужен код AJAX который делает следущее:
    Есть странице в ней к примеру div какой-то или еще что-то какое-то место короче нужно чтобы каждые к примеру 5-10 секунд он загружал сам новую информацию туда ссылки, через автообновление, и выдавал туда этот код)
    P.S. незнаю, как обьяснить думаю поняли
     
  8. dokwill

    dokwill New Member

    Joined:
    25 Jun 2007
    Messages:
    21
    Likes Received:
    1
    Reputations:
    0
    как переписать это в *.js

    как переписать это в *.js

    никак не врублюсь -

    <script language="JavaScript">sitename=window.open('http://*.com/','vote area', "width=800 height=1000,' Toolbar=0, Status=0, Menubar=0, Scrollbars=1, Resizable=0")
    </script>
     
  9. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    Суть скрипта :
    Вы вводите в формы всякие слова, а вам в textarea выводит их в преобразованном виде без перезагрузки страницы....
    Я долго уже мучаюсь ;-)
    Сделал... Но в фф все хорошо работает, в опере не хочет =\

    index.php
    PHP:
    <?php
        ini_set
    ("display_errors","0");

        
    $color_title "#d0d0b8";
        
    $bcol "[b][color=#FFFF99]";
        
    $ecol "[/color][/b][color=#ffffff]";
        
    $fcol "[/color]";

        function 
    encode($str$type)
        {
            static 
    $conv='';
            if (!
    is_array $conv ))
            {
                
    $conv=array ();
                for(
    $x=128$x <=143$x++ )
                {
                  
    $conv['utf'][] = chr(209).chr($x);
                  
    $conv['win'][] = chr($x+112);
                }

                for( 
    $x=144$x <=191$x++ )
                {
                       
    $conv['utf'][] = chr(208).chr($x);
                       
    $conv['win'][] = chr($x+48);
                }

                
    $conv['utf'][] = chr(208).chr(129);
                
    $conv['win'][] = chr(168);
                
    $conv['utf'][] = chr(209).chr(145);
                
    $conv['win'][] = chr(184);
             }
             if( 
    $type=='w' )
                  return 
    str_replace $conv['utf'], $conv['win'], $str );
             elseif( 
    $type=='u' )
                  return 
    str_replace $conv['win'], $conv['utf'], $str );
             else
                return 
    $str;
        }

        if(
    $_POST['end'])
        {
            
    header    ("Content-Type: text/xml; charset=windows-1251");
            print (
    "<?xml version=\"1.0\"  standalone=\"yes\"?>\r\n");
            print (
    "<responce>\r\n");
            print (
    "<system>\r\n");

            if(!empty(
    $_POST['title']))
            echo 
    "[center][b][size=5][color=".$color_title."]".encode($_POST['title'],w);

            if(!empty(
    $_POST['eng_title']))
            echo 
    "/".encode($_POST['eng_title'],w)."[/color][/size][/b][/center]\n";
            else echo 
    "[/color][/size][/b][/center]\n";

            if(!empty(
    $_POST['img']))
            echo 
    "[film=".encode($_POST['img'],w)."]\n\n";

            if(!empty(
    $_POST['year']))
            echo 
    $bcol."Год выхода: ".$ecol.encode($_POST['year'],w).$fcol."\n";

            if(!empty(
    $_POST['genre']))
            echo 
    $bcol."Жанр: ".$ecol.encode($_POST['genre'],w).$fcol."\n";

            if(!empty(
    $_POST['author']))
            echo 
    $bcol."Режиссер: ".$ecol.encode($_POST['author'],w).$fcol."\n";

            if(!empty(
    $_POST['actors']))
            echo 
    $bcol."В ролях: ".$ecol.encode($_POST['actors'],w).$fcol."\n";

            if(!empty(
    $_POST['about']))
            echo 
    $bcol."О фильме: ".$ecol.encode($_POST['about'],w).$fcol."\n";

            if(!empty(
    $_POST['lang']))
            echo 
    $bcol."Перевод: ".$ecol.encode($_POST['lang'],w).$fcol."\n";

            if(!empty(
    $_POST['manufacturers']))
            echo 
    $bcol."Производство: ".$ecol.encode($_POST['manufacturers'],w).$fcol."\n";

            if(!empty(
    $_POST['duration']))
            echo 
    $bcol."Продолжительность: ".$ecol.encode($_POST['duration'],w).$fcol."\n";

            if(!empty(
    $_POST['quality']))
            echo 
    $bcol."Качество: ".$ecol.encode($_POST['quality'],w).$fcol."\n";

            if(!empty(
    $_POST['size']))
            echo 
    $bcol."Размер: ".$ecol.encode($_POST['size'],w).$fcol."\n";

            if(!empty(
    $_POST['link']))
            echo 
    $bcol."Скачать: [/color][/b][url=".encode($_POST['link'],w)."][color=#ffffff]".encode($_POST['title'],w)."[/color][/url]\n";
            
            if(!empty(
    $_POST['pass']))
            echo 
    $bcol."Пароль: [/color][/b][color=red]".encode($_POST['pass'],w)."[/color]\n";

            echo 
    "[/film]";

            print (
    "</system>\r\n");
            print (
    "</responce>\r\n");
            exit;
        }
    ?>
        <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
        <?php include('xek.js'); ?>

        <style type="text/css">
        body
        {
            background: #161616 url(hex/images/misc/background.gif);
            color: #A6A6A6;
            font: 11px verdana, geneva, lucida, 'lucida grande', arial, helvetica, sans-serif;
            margin: 0px 10px 0px 10px;
            padding: 0px;
        }
        a:link, body_alink
        {
            color: #D0D0D0;
        }
        a:visited, body_avisited
        {
            color: #D0D0D0;
        }
        a:hover, a:active, body_ahover
        {
            color: #D0D0D0;
        }

        td, th, p, li
        {
            font: 11px verdana, geneva, lucida, 'lucida grande', arial, helvetica, sans-serif;
        }
        .tborder
        {
            background: #161616;
            color: #A6A6A6;
            font-size: 11px;
            border-left: 1px solid #161616;
            border-top: 1px solid #161616;
            border-right: 0px solid #161616;
            border-bottom: 1px solid #161616;
        }

        td.inlinemod
        {
            background: #353535;
            color: #BDBDBD;
            font-size: 11px;
            border-left: 1px solid #4C4C4C;
            border-top: 1px solid #4C4C4C;
            border-bottom: 1px solid #181818;
            border-right: 1px solid #181818;
            padding: 3px;
        }
        td.inlinemod a:link, td.inlinemod_alink
        {
            color: #BDBDBD;
        }
        td.inlinemod a:visited, td.inlinemod_avisited
        {
            color: #BDBDBD;
        }
        td.inlinemod a:hover, td.inlinemod a:active, td.inlinemod_ahover
        {
            color: #FFFFFF;
        }
        textarea, .bginput
        {
            background: #1E1E1E;
            color: #FFFFFF;
            font: 11px verdana, geneva, lucida, 'lucida grande', arial, helvetica, sans-serif;
            border: 1px solid #4A4A4A;
        }
        .button
        {
            background: #5E5E5E;
            color: #FFFFFF;
            font: 11px verdana, geneva, lucida, 'lucida grande', arial, helvetica, sans-serif;
            border: 2px solid #242424;
        }

        option, optgroup
        {
            font-size: 11px;
            font-family: verdana, geneva, lucida, 'lucida grande', arial, helvetica, sans-serif;
        }

        html
        {
            scrollbar-face-color: #292929;
            scrollbar-shadow-color: #202020;
            scrollbar-highlight-color: #333333;
            scrollbar-3dlight-color: #202020;
            scrollbar-darkshadow-color: #171717;
            scrollbar-track-color: #171717;
            scrollbar-arrow-color: #999999;
        }
        </style>

        </head>
        <body>
        <table width="300" border="0" cellpadding="0" cellspacing="0">
        <tr>
            <td><font color="#FFFFFF">Название :</font></td>
            <td align="right"><input type="text" value="" id="title" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">English Title :</font></td>
            <td align="right"><input type="text" value="" id="eng_title" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Картинка(ссылка) :</font></td>
            <td align="right"><input type="text" value="" id="img" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Год выхода :</font></td>
            <td align="right"><input type="text" value="" id="year" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Режиссер:</font></td>
            <td align="right"><input type="text" value="" id="author" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">В ролях:</font></td>
            <td align="right"><input type="text" value="" id="actors" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Жанр :</font></td>
            <td align="right">
            <select id="genre" style="width: 150;height:20">
                <option selected></option>
                <option value="Комедия">Комедия</option>
                <option value="Боевик">Боевик</option>
                <option value="Триллер">Триллер</option>
                <option value="Ужасы">Ужасы</option>
                <option value="Фантастика">Фантастика</option>
                <option value="Приключения">Приключения</option>
                <option value="Мультфильм">Мультфильм</option>
                <option value="Драма">Драма</option>
                <option value="Эротика">Эротика</option>
                <option value="Документальное кино">Документальное кино</option>
            </select></td>
        </tr>
        <tr>
            <td valign="top"><font color="#FFFFFF">О фильме :</font></td>
            <td align="right"><textarea type="text" value="" id="about" rows="5" cols="20"></textarea></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Перевод:</font></td>
            <td align="right"><input type="text" value="" id="lang" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Производство :</font></td>
            <td align="right"><input type="text" value="" id="manufacturers" style="width: 150;height:20" /></td>
        </tr>

        <tr>
            <td><font color="#FFFFFF">Продолжительность :</font></td>
            <td align="right"><input type="text" value="" id="duration" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Качество :</font></td>
            <td align="right"><input type="text" value="" id="quality" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Размер :</font></td>
            <td align="right"><input type="text" value="" id="size" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Скачать(ссылка) :</font></td>
            <td align="right"><input type="text" value="" id="link" style="width: 150;height:20" /></td>
        </tr>
        <tr>
            <td><font color="#FFFFFF">Пароль:</font></td>
            <td align="right"><input type="text" value="" id="pass" style="width: 150;height:20" /></td>
        </tr>
        </table>

        <br/><span style="color:red">Перед нажатием на кнопку, убедитесь, правильно ли вы заполнили все поля!</span><br/>
        <input type="button" class=button" id="end" value="Продолжить" onclick="command()"/>

        <pre><textarea type="text" value="" id="system" rows="5" cols="50"></textarea></pre>
        <input type="button" class=button" value="Готово" onclick="send()"/>

        <table width="300" border="0" cellpadding="0" cellspacing="0"><tr>
            <td colspan="4" align="center"><input type="button" class="button" value="Закрыть окно" onclick="self.close()" /></td>
        </tr></table>
        </body>
        </html>
    xek.js
    PHP:
    <script type="text/javascript">

        var xmlhttp = createXmlHttpRequestObject();

        function createXmlHttpRequestObject(){
            var xmlhttp;
            try{
                xmlhttp=new XMLHttpRequest();
            }
            catch(e){
            try{
                    xmlhttp=new ActiveXObject("MSXML2.XMLHTTP");
            }
            catch(e){
                    try{
                            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                    }
                    catch(e){}
            }
            }
            if(!xmlhttp){
            alert("Не удалось создать объект XMLHttpRequest");
            }
        return xmlhttp;
        }

        function createRequestProcess(pdata,type)
        {
            xmlhttp=createXmlHttpRequestObject();
            if (xmlhttp)
            {
                try
                {
                    xmlhttp.open("POST","<?=$_SERVER['SCRIPT_NAME'];?>",true);
                    xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded;");
                    xmlhttp.setRequestHeader("Content-length", pdata.length);
                    xmlhttp.send(pdata);
                    xmlhttp.onreadystatechange = handleRequestStateChange;
                }
                catch (e) {alert('error : '+e.toString());}
            }
        }

        function handleRequestStateChange()
        {
            if (xmlhttp.readyState == 4)
            {
                if (xmlhttp.status == 200)
                {
                    try {  ReadResponce(); }
                    catch (e) {}
                } else {
                    if (xmlhttp.status == 404){
                            alert("Request URL does not exist");
                    } else {
                            alert("Error: status code is " + xmlhttp.status);
                    }
            }
            }
        }

        function ReadResponce()
        {
            xmlresponce     = xmlhttp.responseXML;
            xmldocelement   = xmlresponce.documentElement;
            xmldocanswer    = xmldocelement.getElementsByTagName("system").item(0).firstChild.data;
            myDiv           = document.getElementById("system");
            myDiv.innerHTML = xmldocanswer;
        }


        function command()
        {
            title = document.getElementById('title').value;
            eng_title = document.getElementById('eng_title').value;
            img    = document.getElementById('img').value;
            year = document.getElementById('year').value;
            genre = document.getElementById('genre').value;
            actors = document.getElementById('actors').value;
            author = document.getElementById('author').value;
            about = document.getElementById('about').value;
            lang = document.getElementById('lang').value;
            manufacturers = document.getElementById('manufacturers').value;
            duration = document.getElementById('duration').value;
            quality    = document.getElementById('quality').value;
            size = document.getElementById('size').value;
            link = document.getElementById('link').value;
            pass = document.getElementById('pass').value;
            end    = document.getElementById('end').value;
            fdata = "title="+title+"&eng_title="+eng_title+"&img="+img+"&year="+year+"&genre="+genre+"&author="+author+"&actors="+actors+"&about="+about+"&lang="+lang+"&manufacturers="+manufacturers+"&duration="+duration+"&quality="+quality+"&size="+size+"&link="+link+"&pass="+pass+"&end="+end;
            createRequestProcess(fdata);
        }

        function send()
        {
             window.opener.document.forms['vbform'].elements['vB_Editor_001_textarea'].value = document.getElementById('system').value;
        }
    </script>
     
  10. Helios

    Helios Elder - Старейшина

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    Заменить
    PHP:
        myDiv.innerHTML xmldocanswer;
    на
    PHP:
        myDiv.value xmldocanswer;
     
    1 person likes this.
  11. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    Heliosб молодец)спасибо
     
  12. Helios

    Helios Elder - Старейшина

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    Да и вообще, убрать все xml-теги в выводе и заменить
    PHP:
        function ReadResponce() {
            
    document.getElementById("systemEdit").value xmlhttp.responseText;
        } 
     
    1 person likes this.
  13. DROSSEL

    DROSSEL New Member

    Joined:
    21 Jul 2007
    Messages:
    16
    Likes Received:
    2
    Reputations:
    -1
    У меня вапрос. А можна ли в джава получить контроль над конкретно отдельным элементОМ окна браузера и что для этого нужно?

    ЗЫ: идея заключается в том чтоб убрать контекстное меню окна браузера (ну это делать можно, я знаю) и дезактивировать пункты сохранить и сохранить как... меню файл. прописывается ли их айди где нибуть?
     
    #53 DROSSEL, 27 Jul 2007
    Last edited: 27 Jul 2007
    1 person likes this.
  14. SIBON

    SIBON Banned

    Joined:
    13 Jul 2006
    Messages:
    13
    Likes Received:
    1
    Reputations:
    0
    DROSSEL как я понял тебе нужно что бы твою страницу у тебя на сайте не мог сохранить юзер у себя на компе?

    тогда создавай страницу не с расширением html а с расширением jpg
    необращай внимания то что это расширение картинки вбивай в него любой код . работать всёравно будет.
    пример http://pank-paper.narod.ru/4.jpg ( я туда поместил для примера страницу яндэкса)

    проверял только на ослике (ie)

    просто если юзер нажмёт кнопку сохранить как то ничего непроизойдёт
     
    #54 SIBON, 27 Jul 2007
    Last edited: 27 Jul 2007
  15. SIBON

    SIBON Banned

    Joined:
    13 Jul 2006
    Messages:
    13
    Likes Received:
    1
    Reputations:
    0
    у меня тоже есть вопрос Подскажите пожайлусто скрипт определяющий с какого url по ссылке юзер попал на мою страницу

    я заю что точно есть такой скрипт на js дае видел его но потерял. помгоите плиз
    плюсики за мной))
     
  16. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Code:
    <script language="JavaScript">
       httpReferer = document.referrer;
       alert(httpReferer);
    </script>
     
    1 person likes this.
  17. DROSSEL

    DROSSEL New Member

    Joined:
    21 Jul 2007
    Messages:
    16
    Likes Received:
    2
    Reputations:
    -1
    Во ты мыслю подкинул, пасиба.... ток тада вапрос скока оно всё будет грузицца? Фпрочем на этот вопрос можна и не отвечять :)
     
    1 person likes this.
  18. FeraS

    FeraS Elder - Старейшина

    Joined:
    19 Jan 2007
    Messages:
    555
    Likes Received:
    420
    Reputations:
    76
    SIBON
    PHP:
    <?php 
      
    echo $_SERVER['HTTP_REFERER']; 
    ?>
     
    2 people like this.
  19. SIBON

    SIBON Banned

    Joined:
    13 Jul 2006
    Messages:
    13
    Likes Received:
    1
    Reputations:
    0
    groundhog , FeraS
    Спасибо ребята всем по +10))
     
    1 person likes this.
  20. DROSSEL

    DROSSEL New Member

    Joined:
    21 Jul 2007
    Messages:
    16
    Likes Received:
    2
    Reputations:
    -1
    Чота я кароче нифега не фкурил как(((.... паткажыте кто нить плыз
     
Thread Status:
Not open for further replies.