(PHP) Form

Programovacie jazyky, rady, poradňa...
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

(PHP) Form

Príspevok od používateľa buchticka221 »

Po kliknutí na Pokračovať mi k url dopíše ?d2=0&btn=%CFal%9A%ED+web

Kód: Vybrať všetko

<form name="counter" action="" method="get"><input type="text" size="8"
name="d2"><input type="submit" name="btn" id="btn" value="Pokračovať" style="display:none"/></form>
Vedeli by ste mi tento kód upraviť tak aby mi to k url nedopísalo hore spomínaný text...
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2446
Registrovaný: 08 máj 2006, 1:34

Re: (PHP) Form

Príspevok od používateľa *****HERO***** »

posielaj to cez POST, nie GET .. method="post" .. potom bude treba samozrejme upravit aj php action kod .. nebudes k tym datam pristupovat cez $_GET, ale $_POST
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: (PHP) Form

Príspevok od používateľa buchticka221 »

ok diky moc a aby som nemusel zakladat novu temu chcem sa opitat
či v php existuje kód ktorý by vedel načítať znovu kódy ktoré mam v php súbore, ale len od riadku 24... nechcem to riešiť refreshom lebo tak by sa vykonal celý php súbor od začiatku.
MeanSeriously
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 430
Registrovaný: 14 apr 2012, 15:07

Re: (PHP) Form

Príspevok od používateľa MeanSeriously »

určite sa to nedá poriešiť funkciami?
teleport
Expert
Expert
Používateľov profilový obrázok
Príspevky: 167
Registrovaný: 01 aug 2012, 16:06
Bydlisko: Bratislava

Re: (PHP) Form

Príspevok od používateľa teleport »

buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: (PHP) Form

Príspevok od používateľa buchticka221 »

Skúsil som tie premenné ale takto to nepôjde treba tam niečo iné
Uvediem vám príklad aby ste ma pochopili:
Mám overenie či kod získal premennú 1 a v nej je aj:
}
else{
//Za else zadám kód ktorý sa vykoná keď iný kod nezískal premennú 1
A teraz mne ide o to aby som za toto else zadal script ktorý by mi vedel Zopakovať celý script od začiatku Ale... Nech opakuje to overenie dovtedy, kým nezískam túto premennú 1 a keď ju získam už sa nevykoná else.
MeanSeriously
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 430
Registrovaný: 14 apr 2012, 15:07

Re: (PHP) Form

Príspevok od používateľa MeanSeriously »

buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: (PHP) Form

Príspevok od používateľa buchticka221 »

tak tak ale nejak tomu nechápem...
Dal som si do toho kodu ktorý chcem opakovať

Kód: Vybrať všetko

while ($hodnota < 30){
$hodnota++;
a do overenia podmienky som dal

Kód: Vybrať všetko

echo "$hodnota";//toto by vlastne malo ukončiť cyklus a nemalo by sa to opakovať...
a ono sa to stále opakuje až kým neviprší 30ka... Je to mozne?
MeanSeriously
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 430
Registrovaný: 14 apr 2012, 15:07

Re: (PHP) Form

Príspevok od používateľa MeanSeriously »

Áno presne tak to funguje.
len možno si chcel

Kód: Vybrať všetko

//.....
while(!$premenna)
{

//.. kód ktorý sa má opakovať, kým $premenna nenadobudne nejakú hodnotu

} // koniec cyklu

echo $premenna;

//...   
Len otázka znie či to je naozaj najvhodnejšie riešenie tvojho problému
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: (PHP) Form

Príspevok od používateľa buchticka221 »

MeanSeriously napísal:Áno presne tak to funguje.
len možno si chcel

Kód: Vybrať všetko

//.....
while(!$premenna)
{

//.. kód ktorý sa má opakovať, kým $premenna nenadobudne nejakú hodnotu

} // koniec cyklu

echo $premenna;

//...     
Len otázka znie či to je naozaj najvhodnejšie riešenie tvojho problému
no teraz to robí donekonečna to echo $premenna; jak keby neukoncilo to opakovanie...
MeanSeriously
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 430
Registrovaný: 14 apr 2012, 15:07

Re: (PHP) Form

Príspevok od používateľa MeanSeriously »

a máš to echo v tej zloženej zátvorke, alebo až po nej? Pretože má byť po nej a teda vypísať sa len raz. A prosím ťa hoď tu celý ten sporný kód, lebo takto sa to nedá
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: (PHP) Form

Príspevok od používateľa buchticka221 »

MeanSeriously napísal:a máš to echo v tej zloženej zátvorke, alebo až po nej? Pretože má byť po nej a teda vypísať sa len raz. A prosím ťa hoď tu celý ten sporný kód, lebo takto sa to nedá
Počkať možno sa to dá spraviť aj lachšie...

Kód: Vybrať všetko

$dirs = scandir('./all');
$randomDir = $dirs[rand(2, sizeof($dirs)-1)];
$pole = file('./all/' . $randomDir . '/doku.txt');
$int = file_get_contents('./all/' . $randomDir . '/zapis.txt');
$file = fopen('./all/' . $randomDir . '/zapis.txt', 'w');
Našiel som to tu na fore... oskenuje to zložku all a nahodne vyberie jeden priečinok...
No a ak sa to dá teda...
Dať tam podmienku nech to vyberie len súbor (zapis.txt) v ktorom je zapísané vačšie číslo ako 0
Tá podmienka vyzerá nejak takto

Kód: Vybrať všetko

if($int>0)
{
echo "subor ma vacsie cislo ako 0";
else{
echo "subor ma mensie cislo ako 0";
}
No a otázka je ako to upraviť tak nech to vyberá len súbory zapis.txt v ktorom je vacsie cislo ako 0
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: (PHP) Form

Príspevok od používateľa harrison314 »

No predsa cyklom.
Stale mi to pride ako extremne zlé riešenie. Asi by si mal povedat co to cele ma robit.
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: (PHP) Form

Príspevok od používateľa buchticka221 »

harrison314 napísal:No predsa cyklom.
Stale mi to pride ako extremne zlé riešenie. Asi by si mal povedat co to cele ma robit.

Kód: Vybrať všetko

<?php
$dirs = scandir('./all');
$randomDir = $dirs[rand(2, sizeof($dirs)-1)];
$pole = file('./all/' . $randomDir . '/doku.txt');
$int = file_get_contents('./all/' . $randomDir . '/zapis.txt');
$file = fopen('./all/' . $randomDir . '/zapis.txt', 'w');

if($int>0)
{
$zobraz = $pole[rand() % count($pole)];
echo "<object data=\"" . $zobraz . "\" width=\"600\" height=\"400\">";
echo $zobraz;
fwrite($file, --$int);
fclose($file);
}
else{
echo "Smola";
}
?> 
s priecinku .all vyberie nahodny priecinok v ktorom je subor doku.txt v ktorom je www. ktoru nasledne precita a zobrazi v 600x400 a tak isto nacita zapis.txt v ktorom ked je vacsie cislo ako 0 tak odpocita -1 a chcem take nieco ze ked je v tom priecinku ktory vybere v zapis.txt cislo 0 tak nech nezobrazi tu www. co je v doku.txt a nech ani neodpocita -1 ale nech najde iny priecinok v ktorom bude zapis.txt cislo vacsie ako 0 (trochu blbo vysvetlene ale je to komplikovane)
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: (PHP) Form

Príspevok od používateľa audiotrack »

nie že komplikované, ale sprostosť. Použitie db a kod na 5 riadkov ktorý bude navyše rýchlejší ako táto hatlapatlanina je riešenie tvojho problému
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: (PHP) Form

Príspevok od používateľa buchticka221 »

a bez pouzitia databazi by ako vyzeral ten kod?
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: (PHP) Form

Príspevok od používateľa harrison314 »

buchticka221 napísal:a bez pouzitia databazi by ako vyzeral ten kod?
Chces aby ti to fungovalo? Tak pouzi DB, cez subory si iba skomplikujes zivot, nehorazne spomalis stranku, budu na nej chybne udaje a to este nehovorim o pravach (citane/zapis do suborov ak to nahodis na server) a samotne udrziavanie toho vsetkeho.
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: (PHP) Form

Príspevok od používateľa buchticka221 »

*****HERO***** napísal:posielaj to cez POST, nie GET .. method="post" .. potom bude treba samozrejme upravit aj php action kod .. nebudes k tym datam pristupovat cez $_GET, ale $_POST
este 1 otázka k tomuto dal som tam namiesto GET > POST už to neukazuje ale ako náhle kliknem na Pokračovať a potom kliknem na F5 tak sa ma opíta či chcem znovu odoslať príkaz dá sa to nejako upraviť tak aby to po stlačení F5 nezopakovalo kód?
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2446
Registrovaný: 08 máj 2006, 1:34

Re: (PHP) Form

Príspevok od používateľa *****HERO***** »

po tom ako spracujes formular tak to redirectni na seba alebo hocikam inam a POST data sa ti stratia ..

header('Location:' . $_SERVER['PHP_SELF']);
buchticka221
Medium Expert
Medium Expert
Príspevky: 120
Registrovaný: 09 jan 2013, 13:14
Bydlisko: Galanta

Re: (PHP) Form

Príspevok od používateľa buchticka221 »

*****HERO***** napísal:po tom ako spracujes formular tak to redirectni na seba alebo hocikam inam a POST data sa ti stratia ..

header('Location:' . $_SERVER['PHP_SELF']);
mne to vypisuje warning

Kód: Vybrať všetko

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\index.php:18) in C:\xampp\htdocs\index.php on line 22
a 22 je

Kód: Vybrať všetko

header('location: ' . $_SERVER['PHP_SELF']);
Napísať odpoveď