• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

przesyłanie danych do pliku PHP

Object Storage Arubacloud
–1 głos
1,161 wizyt
pytanie zadane 1 listopada 2017 w JavaScript przez niezalogowany

Witam.

Mam taki plik: skrypt.php

function getXMLHttpRequestObject()
{
  try{
    return new XMLHttpRequest();
  }
  catch(e){
    try{
      return new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch(e){
      return false;
    }
  }
}

function pobierzDane()
{
  if(XMLHttpRequestObject){
    var div = document.getElementById("warstwaDanych");
    var przyciskEl = document.getElementById("przycisk1");
    przyciskEl.disabled = true;
    XMLHttpRequestObject.open("GET", "dane.php");
    XMLHttpRequestObject.onreadystatechange = function()
    {
      if (XMLHttpRequestObject.readyState == 4 &&
          XMLHttpRequestObject.status == 200) {
        div.innerHTML = XMLHttpRequestObject.responseText;
        przyciskEl.disabled = false;
      }
    }
    XMLHttpRequestObject.send(null);
  }
}

var XMLHttpRequestObject = getXMLHttpRequestObject();

 

taki: dane.php

<?php
    include('connect.php');
    $dan = $_GET['zmienna']; //dane odebrane GETem
    $sth = $connect->prepare('INSERT INTO `demotbl`(`text`) VALUES (:text)');
        $sth->bindParam(':text', $dan);
        $sth->execute();
        echo "Dodano do bazy danych";
?>

i taki: index.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Ajax</title>
<script src="script.js"></script>
</head>
<body>
<div>
    <?php
        $zmienna1 = 1; //ma zostać przesłane GETem
    ?>
<input type="button" value="Kliknij tu"
       onclick="pobierzDane();" id="przycisk1" />
</div>
<div id="warstwaDanych">
</div>
</body>
</html>

 

W jaki sposób przesłać dane zawarte w zmiennej "$zmienna1" do pliku dane.php za pomocą AJAX tak jak normalnie zrobiłbym to <? echo '<a href="dane.php?zmienna='.$zmienna1.'">Wyślij</a>'?>

Skrypt zawarty w pliku skrypt.php wykonuje skrypt w dane.php bez przeładowania strony, to działa poprawnie, jednak jak przesłać dodatkowe wartości które można odebrać w dane.php?

2 odpowiedzi

+1 głos
odpowiedź 1 listopada 2017 przez Fenix Nałogowiec (26,750 p.)
wybrane 2 listopada 2017
 
Najlepsza

Możesz je przesłać (najlepiej w formacie json) poprzez metode send a dokładniej 

XMLHttpRequestObject.send(JSON.stringify({data:"data", date2:"data2"}));

 

 

Więcej do przeczytania tutaj

komentarz 4 listopada 2017 przez niezalogowany

Gdzie w moim skrypcie muszę umieścić:

XMLHttpRequestObject.send(JSON.stringify({data:"data", date2:"data2"}));

data i data2 mają być zdefiniowane jak zamienne?

jeśli tak w jaki sposób pobrać do nich dane z undex.php? za pomocą getElementById?

nie mogę tego sam ogarnąć

komentarz 4 listopada 2017 przez Fenix Nałogowiec (26,750 p.)
A przeczytales tutorial, ktory Ci wyslalem w linku?
komentarz 4 listopada 2017 przez niezalogowany
tak, próbowałem coś wykminić według niego ale nie wyszło
komentarz 4 listopada 2017 przez Fenix Nałogowiec (26,750 p.)
Co "wykminiles"?

Podaj swoj aktualny kod.
komentarz 5 listopada 2017 przez niezalogowany

Mam coś takiego, wydaj mi się to za proste ale dział.

function getXMLHttpRequestObject()
{
  try{
    return new XMLHttpRequest();
  }
  catch(e){
    try{
      return new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch(e){
      return false;
    }
  }
}

function pobierzDane()
{
  if(XMLHttpRequestObject){
    var div = document.getElementById("warstwaDanych");
    var przyciskEl = document.getElementById("przycisk1");
      var data = document.getElementById("data");
    przyciskEl.disabled = true;
    XMLHttpRequestObject.open("GET", "dane.php?id=&url=http");
    XMLHttpRequestObject.onreadystatechange = function()
    {
      if (XMLHttpRequestObject.readyState == 4 &&
          XMLHttpRequestObject.status == 200) {
        div.innerHTML = XMLHttpRequestObject.responseText;
        przyciskEl.disabled = false;
      }
    }
    XMLHttpRequestObject.send(null);
  }
}

var XMLHttpRequestObject = getXMLHttpRequestObject();

 

jednak jak pobrać dane z pliku index.php i wstawić je do zapytanie tam gdzie teraz są na sztywno ustawione?

Chodzi o tą linię:

XMLHttpRequestObject.open("GET", "dane.php?id=55&url=http");

jak za id i url podstawić pobrane dane i jak je pobrać?

–1 głos
odpowiedź 1 listopada 2017 przez k3ybo4rd Obywatel (1,180 p.)
Może stosując JSON ?

https://www.w3schools.com/js/js_json_php.asp

 

Dawno w się nie bawiłem tego typu sprawy jedynie coś mi ledwo świta w głowie

Podobne pytania

0 głosów
0 odpowiedzi 418 wizyt
pytanie zadane 28 stycznia 2017 w JavaScript przez gromula Stary wyjadacz (10,070 p.)
0 głosów
1 odpowiedź 205 wizyt
pytanie zadane 18 maja 2017 w JavaScript przez Orustak Nowicjusz (140 p.)
0 głosów
2 odpowiedzi 395 wizyt
pytanie zadane 4 grudnia 2018 w PHP przez james4444 Nowicjusz (120 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...