Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.07.2016, 15:43   #1
Diaboliq
Новичок
Джуниор
 
Регистрация: 15.07.2016
Сообщений: 2
Радость Передача переменной в php

Привет, я совсем-совсем новичок. Помогите плз. Есть код на JS, который должен отправлять переменную в php файл и выводить ее на экран.

Код HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>
<head>

<script src="jquery-3.0.0.min.js"></script>
    <script>
      
      window.onload = function ()
      {

        document.getElementById("btnGet1").onclick = function ()
        {
          var xhr1 = new XMLHttpRequest();
          var url = "piska.php";
          var con = "5";
          xhr1.open("POST", url, false);
          xhr1.setRequestHeader("Content-type","application/x-www-form-urlencoded");
          xhr1.send("0="con"");
          document.getElementById("outputRight").innerHTML += xhr1.responseText;
        }
        document.getElementById("btnGet2").onclick = function ()
        {
          var xhr2 = new XMLHttpRequest();
          xhr2.open("POST", "testfile2.txt", false);
          xhr2.send();
          document.getElementById("outputLeft").innerHTML += xhr2.responseText;
        }
      }
   </script>

</head>

<body>
<input id="btnGet1" type="button" value="Right" />
<p id="outputRight"></p>
<input id="btnGet2" type="button" value="Left" />
<p id="outputLeft"></p>  
</body>
</html>
А вот файл PHP, который ловит переменную в массив

PHP код:
<?
echo "Method: ".$_SERVER['REQUEST_METHOD'];
echo 
"<br/>Recieved by AJAX datas:";
echo 
"<pre>";
$te $_REQUEST[0];
echo 
"$te";


echo 
"</pre>";
?>
А теперь суть вопроса. При нажатии кнопки скрипт пхп не срабатывает. Но он работает, если передавать не переменную, а значения внесенные вручную. Спасибо
Diaboliq вне форума Ответить с цитированием
Старый 15.07.2016, 22:12   #2
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

С аджаксом не знаком. Меня смутила запись в JS:
Код:
xhr1.send("0="con"");
Вы уверены, что вы написали эту строку верно? Я тут вижу синтаксическую ошибку...
Вадим Мошев вне форума Ответить с цитированием
Старый 18.07.2016, 11:16   #3
Diaboliq
Новичок
Джуниор
 
Регистрация: 15.07.2016
Сообщений: 2
Смех

Дело в том, что я пытался разными способами передать переменную и ни один синтаксис не сработал Может подскажете как правильно это сделать?))))
Diaboliq вне форума Ответить с цитированием
Старый 18.07.2016, 16:38   #4
pompiduskus
юзер как все
Участник клуба
 
Аватар для pompiduskus
 
Регистрация: 10.01.2012
Сообщений: 1,586
По умолчанию

PHP код:
// ====================================================================
function getXmlHttp(){

    var 
xmlHTTH;

    try{ 
        
xmlHTTH = new ActiveXObject("MSXML2.XMLHTTP");

    }catch (
e){

        try { 
            
xmlHTTH = new ActiveXObject("Microsoft.XMLHTTP"); 

        }catch (
e){ 
            
xmlHTTH = new XMLHttpRequest(); 

        } 
    }

    return 
xmlHTTH;

}

// ====================================================================
// Метод GET

function ajaxGET(url) {

    try{

        
// -------------------------------------------
        
var _AJAX_ getXmlHttp();

        
url "http://site.com/?id=22";

        
_AJAX_.open('GET'urltrue); // false SYNC
        //_AJAX_.setRequestHeader('Access-Control-Allow-Origin', '*');
        //_AJAX_.setRequestHeader('Access-Control-Allow-Methods', 'POST, GET, OPTIONS');
        //_AJAX_.withCredentials = true;
        // _AJAX_.setRequestHeader('_status_', 'custom-data');

        // -------------------------------------------
        
_AJAX_.onreadystatechange = function () {
            if(
_AJAX_.readyState == && _AJAX_.status == 200){

                
// ---------------------------------------------------------
                // _AJAX_.getAllResponseHeaders();      // 
                // _AJAX_.getResponseHeader('name');    // 
                // _AJAX_.readyState                    // == 4
                // _AJAX_.status                        // == 200
                // _AJAX_.responseText                  // == text response

                
console.log("SERVER RESPONSE: "+_AJAX_.responseText);
                
// ---------------------------------------------------------
            
}
        }
 
        
_AJAX_.send(null);
        
// -------------------------------------------
 
    
}catch(e){
        
console.log(e);
    }

}

// ====================================================================
// Метод POST

function ajaxPOST(urlPostData){

    try{

        
// -------------------------------------------
        
url "http://site.com/?id=22";

        var 
PostData '';
            
PostData += 'login=name';
            
PostData += '&password=12345';

            
//PostData = encodeURIComponent(PostData);
            //alert(encodeURIComponent(PostData));
            //alert(encodeURI(PostData));    
        // -------------------------------------------
        
var _AJAX_ getXmlHttp();
        
// -------------------------------------------
        
_AJAX_.open('POST'urltrue); // false ASYNC         
        // -------------------------------------------
        //_AJAX_.setRequestHeader("Custom_name", "custom_data");
        //_AJAX_.setRequestHeader("Content-Type", "multipart/form-data");
        //_AJAX_.setRequestHeader("Content-Type", "text/html");
        //_AJAX_.setRequestHeader("Content-length", PostData.length);
        //_AJAX_.setRequestHeader('Content-type','application/x-www-form-urlencoded');

        // -------------------------------------------
        
_AJAX_.onreadystatechange = function () {
            if(
_AJAX_.readyState == && _AJAX_.status == 200){

                
// ---------------------------------------------------------
                // _AJAX_.getAllResponseHeaders();      // 
                // _AJAX_.getResponseHeader('name');    // 
                // _AJAX_.readyState                    // == 4
                // _AJAX_.status                        // == 200
                // _AJAX_.responseText                  // == text response

                
console.log("SERVER RESPONSE: "+_AJAX_.responseText);
                
// ---------------------------------------------------------
            
}
        }

        
_AJAX_.sendPostData );
        
// -------------------------------------------

    
}catch(e){
        
console.log(e);
    }

}

// ==================================================================== 
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
pompiduskus вне форума Ответить с цитированием
Старый 18.07.2016, 16:43   #5
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

трешак какой-то, у тебя же jQuery подключен...
Код:
$('#btnGet1').click(function(){
    var url = 'piska.php';
    var data = {
        con: 5
    };
    $.get( url, data, response );
    function response( output ){
        $('#outputRight').append( '<li>'+output+'</li>' );
    };
});
piska.php
Код:
<? 
if ( isset($_GET['con']) ) {
    echo $_GET['con']
}
?>
не уверен, что пых заработает, сто лет его не тыкал

upd:
Цитата:
трешак какой-то
pompiduskus, это я не тебе
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 18.07.2016, 17:45   #6
Fenex
Форумчанин
 
Аватар для Fenex
 
Регистрация: 15.02.2012
Сообщений: 821
По умолчанию

Цитата:
Сообщение от Naive Посмотреть сообщение
не уверен, что пых заработает, сто лет его не тыкал
да, точка с запятой - вещь обязательная в нём
^-.-^ My GitHub
Fenex вне форума Ответить с цитированием
Старый 18.07.2016, 19:05   #7
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Цитата:
Сообщение от Fenex Посмотреть сообщение
да, точка с запятой - вещь обязательная в нём
ну дак написал бы рабочий)
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 19.07.2016, 01:07   #8
Fenex
Форумчанин
 
Аватар для Fenex
 
Регистрация: 15.02.2012
Сообщений: 821
По умолчанию

ну ок )
Код:
<?php 
if ( isset($_GET['con']) ) {
    echo $_GET['con'];
}
^-.-^ My GitHub
Fenex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача переменной из JS в PHP Alex870 JavaScript, Ajax 5 28.02.2016 17:24
Передача переменной, из php в js. Predator199 JavaScript, Ajax 8 24.12.2013 12:36
Передача переменной в php Ruska882009 PHP 2 23.09.2009 12:57
Передача переменной PHP tsergey PHP 4 02.06.2009 03:20