» »

[php] method="post"

[php] method="post"

slovencl ::

Rad bi stestiral "post" metodo, pa mi ne deluje. Za enak primer sem uporabil "get" metodo, in delije BP. Ni mi jasno kaj je narobe tukaj?
<?php 
$be = isset($_POST["beseda"]) ? $_POST["beseda"] : "xyz";
$st = isset($_POST["stevilka"]) ? $_POST["stevilka"] : "5";

//$be = isset($_REQUEST["beseda"]) ? $_REQUEST["beseda"] : "xyz";
//$st = isset($_REQUEST["stevilka"]) ? $_REQUEST["stevilka"] : "5";

echo "beseda: "; echo $be; echo "<br>";
echo "stevilka: "; echo $st; echo "<br>";
?>

<form action="test_post.php" method="post">  // test_post.php je ta isti fajl 
Beseda: <input type="text" name="beseda" />
Stevilka: <input type="text" name="stevilka" />
<input type="submit" />
</form>
  • spremenil: slovencl ()

mjakop ::

Men stvar deluje na mojem domačem strežniku.

slovencl ::

Se pravi mora biti pri meni nekaj narobe z apačem oz. php-jem. :\

V prejšnjem postu sem pozabil napisat, da meni vedno na začetku napiše:
beseda: xyz
stevilka: 5
ne glede na to, kaj vpisujem v polja.

Katero verzijo apača php-ja pa imaš?

mjakop ::

Na začetku logično, da izpiše tisto če nisi še nič vpisal. Te vrednosti maš določeni kot privzeti.
Imam pa tole: Apache/2.2.3 (Win32) PHP/5.1.6 Server at localhost Port 80

slovencl ::

Narobe sem se izrazil, mislil sem na vrhu. Tudi po tem, ko nekaj vpišem in dam "pošlji poizvedbo", imam še vedno vse po defaultu.

Imam pa php 5.2.0 in apache 2.2.3 na xp-jih. A je sploh možno, da bi bil problem v apachu? :\

Zgodovina sprememb…

  • spremenil: slovencl ()

mjakop ::

Ne verjamem, da bi bil problem v strežniku.

sverde21 ::

Ti izpiše kakšno napako al kako? Povej kaj ti izpiše, če ti sploh izpiše kaj... :) Sicer pa probaj dodat tole na začetku skripte (za izpis napak):
error_reporting(E_ALL);
Mogoče ti bo sedaj izpisal kakšno napako...
<?php echo `w`; ?>

boho ::

php kodo daj v ločen fajl in html kodo v drug fajl.

boho ::

Eh, pardon. ignorirajte moj prejšni post sm čist mim ustrelu :8) . Koda je uredu.

slovencl ::

Php imam že nastavljen na error_reporting = E_ALL, pa ni nobene napake. To je kr neki :\

sverde21 ::

Ja kaj ti izpiše sploh kaj?
<?php echo `w`; ?>

TyKee ::

Meni tudi zgornja zadeva deluje BP. Malo sem sicer samo HTML kodo dal v PHP, torej:

<?php
$be = isset($_POST["beseda"]) ? $_POST["beseda"] : "xyz";
$st = isset($_POST["stevilka"]) ? $_POST["stevilka"] : "5";

echo "beseda: "; echo $be; echo "<br>";
echo "stevilka: "; echo $st; echo "<br>";

echo "<form action='test_post.php' method='post'>";
echo "Beseda: <input type='text' name='beseda' />";
echo "Stevilka: <input type='text' name='stevilka' />";
echo "<input type='submit' />";
echo "</form>";
?>

Pa drugače ko izpisuješ, ne rabiš tolko echotov, ampak narediš enostavno:
echo "Beseda: ".$be." <br /> Stevilka: ".$st." <br />";

Drugace pa jaz delam na principu isset-a za BUTTON, in ce dam tak kot zelis ti, da se ti forma vedno izpise, naredis pac tak:
<?php
if (isset($_POST['btnSubmit'])) {
echo "".$_POST['beseda']." <br />";
echo "".$_POST['stevilka']."";
echo "<form action='test_post.php' method='post'>";
echo "Beseda: <input type='text' name='beseda' />";
echo "Stevilka: <input type='text' name='stevilka' />";
echo "<input name='btnSubmit' type='submit' />";
echo "</form>";
}
else {
echo "xyz <br />";
echo "5";
echo "<form action='test_post.php' method='post'>";
echo "Beseda: <input type='text' name='beseda' />";
echo "Stevilka: <input type='text' name='stevilka' />";
echo "<input name='btnSubmit' type='submit' />";
echo "</form>";
}
?>

Drugace pa jaz formo samo pod ELSE uporabim, ker ko mam enkrat postano formo, je vec ne rabim, saj jo ponavadi rabim za vnasanje/... podatkov (torej v MySQL recimo).

slovencl ::

Ja kaj ti izpiše sploh kaj?

Ja, tole, in to ne glede na to, kaj vpišem v polje.

TyKee, sem probal tudi tvojo drugo varianto, pa je rezultat isti.

BTW. phpinfo() mi dela BP.

Road Runner ::

kaj pa ce bi sel po korakih cez kodo da vidis kje se pojavi napaka?

torej naredil bi naprimer:
echo '<pre>';

print_r($_POST);
echo "\n\n\n";
echo $_POST["beseda"] . "\n";
echo isset($_POST["beseda"]) . "\n";
echo isset($_POST["beseda"]) ? 'true' : 'false';

echo '</pre>';


in ti bo hitro jasno tocno kje se zalomi.
http://dusan.fora.si/blog/ (742617000027)

Zgodovina sprememb…

slovencl ::

Sem probal in dobim tole (tudi če kaj vpišem v polje).

Kaj to zdej pomeni, da post metoda sploh nič ne pošle?

link_up ::

firefox, IE, opera ? :)
In and Out

Road Runner ::

ocitno se ti nic ne poslje. kaj je krivo pa vprasanje. lahko browser, lahko server. poskusi v drugem browserju ter na drugem serverju
http://dusan.fora.si/blog/ (742617000027)

slovencl ::

Firefox in IE data oba isti nedelujoči rezultat.

Bom probal z drugo verzijo php-ja.

boho ::

Če imaš starejšo verzijo php-ja lahko probaš zamenjat $_POST[ ] s $HTTP_POST_VARS[ ]

slovencl ::

Imam php5.2 - ta ni ravno najstarejši. Sem probal tudi to varianto, pa je še vedno isto. :\


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

PHP cookie problem

Oddelek: Izdelava spletišč
81261 (956) Ziga Dolhar
»

PHP - nujno! - email forma

Oddelek: Izdelava spletišč
261931 (1613) DonMatejo
»

Zelo enostavna PHP skripta, ki ne dela - help :(

Oddelek: Izdelava spletišč
131486 (1251) snow
»

sessions

Oddelek: Izdelava spletišč
151408 (1270) multiplayer
»

email še enkrat

Oddelek: Izdelava spletišč
71450 (1241) Taras_Bulba

Več podobnih tem