Skocz do zawartości

metoda post w PHP5


yoyos
 Udostępnij

Rekomendowane odpowiedzi

Witam

Problem jest taki: przy próbie wysyłania danych metodą post pod PHP5 wyskakuje błąd "The requested method POST is not allowed for the URL",inne pliki interpretuje dobrze, zapisuje też dane do bazy z wysyłanego formularza, no ale nie pojawia się strona tylko ten komunikat. W PHP4 działa wszystkon ok. Skrypt to katalog phpmydirectory, a z tego co pisze na forum na stronie autora, powinien pracować pod PHP5. Z iq.pl nie odpisali mi nic konkretnego, twierdzą że ustawienia serwera mają standardowe.

Odnośnik do komentarza
Udostępnij na innych stronach

ten plik np odpowiada za logowanie

<?php

/* *********************************************************************

*

* This script is owned and copyrighted by phpMyDirectory.com. Your

* license confers no title or ownership in the Software and is

* not a sale of any rights to the Software.

*

***********************************************************************/

define('PMD_SECTION','members');

include ('../defaults.php');

$incomingline = $lang['my_account'];

if($_GET['message'] == 'EMAILNOTVALID') {

$response['message'] = $lang['email_confirmation_error'];

$response['type'] = 'error';

} elseif($_GET['message'] != '') {

$message = urldecode($_GET['message']);

$response['message'] = $message;

$response['type'] = 'error';

}

$template_content = & new PMDTemplate(PMDROOT.TEMPLATE_PATH.'/user_login.tpl');

if(sizeof($response) > 0) {

$template_response = & new PMDTemplate(PMDROOT.TEMPLATE_PATH.'/blocks/response.tpl');

$template_response->set('response',$response);

}

$template_content->set('template_response',$template_response);

$template_content->set('lang',$lang);

$template_content->set('message',$message);

$template_content->set('error',$error);

include(PMDROOT.'/includes/template_setup.php');

?>

Odnośnik do komentarza
Udostępnij na innych stronach

Przyznam szczerze, że pierwszy post nie dość precyzyjnie (jak dla mnie) opisuje problem, ale mam pewną uwagę:

The requested method POST is not allowed for the URL
- co prawda nie znam skryptu, o którym rozmawiacie - ale chciałbym tylko zauważyć, że spotkałem się z takim komunikatem jako odpowiedź serwera HTTP - nie wiem czy to było dla wszystkich domyślne i oczywiste.

Może to pomoże w rozwiązaniu problemu - po prostu warto spojrzeć na problem na innym poziomie.

Generalnie, skoro nie możesz POST'ować tego skryptu to prześlij dane GET'em - no chyba, że to o coś innego chodzi, ale niestety jak dla mnie to jest tu za mało informacji i kodu do zaanalizowania.

Hmm, tak sobie myślę - a może na tym hostingu jest tak, że np. PHP4 jest obsługiwane przez pliki .php, natomiast PHP5 przez pliki .php5 i jeszcze nie są one dodane w httpd.conf lub po prostu, Ty skrypty w PHP5 zapisujesz ze złym rozszerzeniem, którego nie rozpoznaje Apache.

Edytowane przez smut

Gwarantowany efekt. 100% satysfakcji lub zwrot gotówki. Tylko teraz profesjonalne pozycjonowanie książek na Twojej półce. 20% zniżki jeżeli masz różową i prostą (wypozycjonowaną) ścianę. Nie pozycjonujemy stron w Google.

Odnośnik do komentarza
Udostępnij na innych stronach

Wg. mnie to nie wina skyptu, tylko jednak konfiguracji serwera. W protokole HTTP jest wiele zapytan, oprocz GET i POST sa jeszcze HEAD, TRACE, OPTIONS, a nawet PUT i DELETED (tak, tak - jest mozliwosc wgrywania i usuwania plikow bez zadnych skryptow). Oczywiscie ze wzgledow bezpieczenstwa wiekszosc tych opcji jest wylaczona (takim DELETEM kazdy moglby kasowac twoje pliki), i w Twoim wypadku uwazam ze pliki z rozszerzeniem .php5 maja zezwolone tylko na GET.

Odnośnik do komentarza
Udostępnij na innych stronach

Zrób prosty tworząc plik php z kodem

<?php
print_r($_POST);  
?>
<form method="post"">
<input type="text" name="login" />
<input type="submit" value="go" />
</form>

Zobaczysz czy błąd się pojawia, bo absurdem by była sytuacja, że serwer nie obsługuje metody POST :)

Edytowane przez Mion

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności