Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przesłanie formularza w linku
Forum PHP.pl > Forum > PHP
bieniowa
Witajcie,

Chciałbym zasięgnąć porady kogoś biegłego w języku PHP. Otóż chciałbym zapytać się czy jest możliwe takie sformułowanie adresu URL, aby pominął on potwierdzenie formularza przyciskiem.

Żeby było jaśniej to podam przykład:
Po wejściu do przykładowego katalogu stron np. www.wszech.com, muszę wybrać odpowiednią kategorię, wpisać adres strony i nacisnąć przycisk "Wyślij". Po wykonaniu tych czynności przechodzę do etapu dodawania strony. Interesuje mnie to czy będąc na stronie głównej mogę dopisać do adresu url odpowiednie zmienne takie jak id kategorii, nazwa strony itp. tak aby przeniosło mnie od razu do miejsca, w którym dodaję stronę?
carkar
Jest to możliwe o ile dane są przenoszone metodą GET
bieniowa
Ok dzięki za pomoc. Niestety dane są przenoszone metodą Post.
carkar
W takim wypadku nie jesteś w stanie nic zrobić
bieniowa
Teraz tak sobie pomyślałem, że skoro istnieją automatyczne dodawarki do tych katalogów to ich twórcy musieli wymyślić jakiś sposób na przebicie się przez ten formularz. No, ale to chyba póki co pozostanie dla mnie zagadką.
toaspzoo
Jeżeli post, można to zrobić za pomocą cURLa smile.gif
Bags_Bunny
cURL pozwala wysyłać żądania metodą post. Poszukaj na forum albo wygooglaj "curl post". Tutaj przykładowy kod: http://forum.php.pl/index.php?showtopic=172726 http://forum.php.pl/index.php?showtopic=189871
camikazee
Zawsze możesz zrobić krok pośredni. Czyli po kliknięciu dane idą POSTem, skrypt je odpowiednio filtruje i buduje z nich odpowiedni adres url, po czym przekierowujesz na swój adres adres.pl/parametr1/parametr2 itd.
toaspzoo
Da się nawet za pomocą ajaxu smile.gif
bieniowa
Dla takiego formularza:

  1. <form method="post" action="?action=add">
  2. <input type="hidden" name="sub[id]" value="253" />
  3. <input type="hidden" name="sub[id_cat]" value="26" />
  4. <input type="hidden" name="sub[title]" value="Akcesoria GSM " />
  5. Adres: <input type="text" name="site" size="38" value="http://" />
  6. <input type="submit" value="Wyślij" name="new_site" class="button" />
  7. </form>


skleciłem coś takiego:

  1. $c = curl_init();
  2. curl_setopt($c, CURLOPT_URL, 'tutajmamlink');
  3. curl_setopt($c, CURLOPT_POST, 1);
  4. curl_setopt($c, CURLOPT_POSTFIELDS, 'sub[id]=253&sub[id_cat]=26&sub[title]=Akcesoria GSM&site=przykladowastrona&action=Wyślij');
  5. curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
  6. $page = curl_exec($c);
  7. curl_close($c);
  8. echo 'Wynik: <br>'.$page;


Niestety nie przenosi mnie to dalej.
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.