Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wysyłanie metodą post bez html ,problem
Forum PHP.pl > Forum > PHP
szypi1989
Witam ,otóż chce wysłać metodą POST,bez formularza html.I jakoś mi nie idzie.Otóż mam taki kod ściągniety z google:
  1. <?php
  2. $data = array ('login' => 'anonim', 'password' => 'tymczasowy');
  3. $data = http_build_query($data);
  4.  
  5. $context_options = array (
  6. 'http' => array (
  7. 'method' => 'POST',
  8. 'header'=> "Content-type:application/x-www-form-urlencoded\r\n"
  9. . "Content-Length: " . strlen($data) . "\r\n",
  10. 'content' => $data
  11. )
  12. );
  13.  
  14. $context = stream_context_create($context_options);
  15. $fp = fopen('index.php', 'r', true, $context);
  16. $page = stream_get_contents($fp);
  17. echo $page;
  18. ?>

Z strony skrypt.php przekierowuje do index.php
Ale nie idze,pokazuje mi się strona index.php ,formularz który na niej jest,i na dodatek czysty kod php,a nie jego działanie.
redeemer
Prawdopodobnie musisz zamiast ścieżki na dysku (linia 15) podać lokalizację pliku przez wrapper http np. file_get_contents('http://strona/index.php', false, $context);
szypi1989
napewno nie o to chodzi,ponieważ ścieżka jest dobra,a gdy wpisuje inną jest błąd.
redeemer
Chodzi o to, żeby to przeszło przez serwer www, który przekazuje POST (bo POST to metoda rządania http) do skryptu i parsuje Ci kod PHP.
szypi1989
aha,to z localhosta jak to zrobić?
redeemer
A jak ten skrypt "uruchamiasz"?
szypi1989
Dla przykładu uruchamiam tak:

if($_SERVER['REQUEST_METHOD']=='POST'){


echo "<p>".$_POST['login']."</p>";
}
echo "<p>".$_POST['login']."</p>";
?>

redeemer
Nie chodziło mi o kod, tylko czy uruchamiasz skrypt w przeglądarce, czy przez CLI?
szypi1989
w przeglądarce
redeemer
No to nie mów, że nie wiesz skąd wziąć adres pliku? wink.gif
szypi1989
Ale to nie chodzi o adres,adres jest dobry ma bank,źle mnie zrozumiałeś.Poprostu nie mogę odebrać tych zmiennych post .Przekierowuje z index.php do skrypt.php i z skrypt.php nie mogę odebrać zmiennych post

html normalnie odbiera,ale nie zmienne i nie czyta php

gdy wpisze w skrypt.php:

  1. <p>coś tam</p>

  1. <?php
  2. echo "info"
  3. ?>

to wyświetli mi się tylko html ,czyli:
coś tam
redeemer
Co masz na myśli pisząc przekierowanie? fopen?
szypi1989
nie,że odczytuje ten plik skrypt.php
redeemer
Masz 2 skrypty:

1) skrypt.php (źródło z postu pierwszego)
2) index.php:
  1. <p>coś tam</p>
  2. <?php
  3. echo "info"
  4. ?>
Co robisz? Jaki adres podajesz w przeglądarce?
szypi1989
localhost/loges/skrypt.php
localhost/loges/index.php
redeemer
Jeśli wchodzisz na http://localhost/loges/index.php i w źródle strony widzisz
Kod
<p>coś tam</p>
<?php
echo "info"
?>
zamiast
Kod
<p>coś tam</p>info
To znaczy, że twój serwer nie parsuje pliku PHP.
szypi1989
Hej,parsuje mi pliki na bank,w sumie znalazłem już sposób,wszystko jest ok,jedyny problem to że wyskakuje mi błąd Undefined index: HTTP_USER_AGENT in..
Poszperam w google,jak to ominąć


Mam panel logowania w index.php w nim formularz logowania,i gdy przesyłam pliki wszystko ok,ale gdy w pliku session.php wyciągam http_user_agent to mi nie wyciąga i wyskakuje mi właśnie ten błąd
Dobra temat rozwiązany,na to też sposób znalazłem:))
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.