Autor | Zpráva | ||
---|---|---|---|
Coompiik Profil |
Dobrý den,
Trošku jsem se koukl na php a splácal dohromady tohle: Nevíte kde je v tom chyba? nefunguje mi to: Zpracuj.php <?php if(isset($_POST['send'])) { $banner = $_POST['banner']; $bcg = $_POST['bcg']; $name = $_POST['name']; $vodoznak = $_POST['vodoznak']; $mail = $_POST['mail']; $v1 = $_POST['v1']; $v2 = $_POST['v2']; $v3 = $_POST['v3']; $v4 = $_POST['v4']; $v5 = $_POST['v5']; $c1 = $_POST['c1']; $c2 = $_POST['c2']; $c3 = $_POST['c3']; $c4 = $_POST['c4']; $v5 = $_POST['c5']; $vodoznakp = $_POST['vodoznakp']; $souhlasim = $_POST['souhlasim']; if($souhlasim!='A') { echo"Někde se vyskytla chyba, omlouváme se!"; die(); } $path = 'prukaz-wanted''/'.$name.'.html'; if(!is_dir($nick)) { mkdir('prukaz-wanted', 0777); # chmod 777 $file = fopen($path, 'a+'); fwrite($file, 'Server: '.$name.'<br>Miniatura: '.$banner.'<br>Pozadí: '.$bcg.'<br>VodoznakPos '.$vodoznak.'<br>E-mail: '.$mail.'<br>1 Řádek: '.$v1.'<br>2 Řádek: '.$v2.'<br>3 Řádek: '.$v3.'<br>4 Řádek: '.$v4.'<br>5 Řádek: '.$v5.'<br>Barva 1 Řádek: '.$c1.'<br>Barva 2 Řádek: '.$c2.'<br>Barva 3 Řádek: '.$c3.'<br>Barva 4 Řádek: '.$c4.'<br>Barva 5 Řádek: '.$c5.'<br>Smazat vodoznak: '.$vodoznakp.''); fclose($file); } else { if(!file_exists($path)) { $file = fopen($path, 'a+'); fwrite($file, 'Server: '.$name.'<br>Miniatura: '.$banner.'<br>Pozadí: '.$bcg.'<br>VodoznakPos '.$vodoznak.'<br>E-mail: '.$mail.'<br>1 Řádek: '.$v1.'<br>2 Řádek: '.$v2.'<br>3 Řádek: '.$v3.'<br>4 Řádek: '.$v4.'<br>5 Řádek: '.$v5.'<br>Barva 1 Řádek: '.$c1.'<br>Barva 2 Řádek: '.$c2.'<br>Barva 3 Řádek: '.$c3.'<br>Barva 4 Řádek: '.$c4.'<br>Barva 5 Řádek: '.$c5.'<br>Smazat vodoznak: '.$vodoznakp.''); fclose($file); } else { echo' Někde se vyskytla chyba, omlouváme se!'; } } } ?> <p>Pokud nad tímto textem teď zrovna nevidíš errorovou zprávu očekávej mail od media@coompiik.jecool.net! |
||
Adam16 Profil |
#2 · Zasláno: 3. 11. 2013, 22:39:45
skús napísať akú chybu ti to vypisuje a na akom riadku....
|
||
Tori Profil |
ř.26:
$path = 'prukaz-wanted''/'.$name.'.html'; - ty dva apostrofy jsou navíc, syntaktická chyba.
ř.28: odkud berete proměnnou $nick ?
Funkce mkdir a fopen mohou vracet false v případě, že nepůjde vytvořit složku nebo soubor, to byste mohl případně taky ošetřit nějakou podmínkou.
|
||
Coompiik Profil |
Adam16:
Žádnou mi to nevypisuje stránka nelze zobrazit, nevím kde ty chyby zjistit promiň. Tori: ' smažu, napíšu co to udělá a proměnou nick jsem nejprve plánoval ale pak jsem jí předělal na prukaz-wanted, děkuji na upozornění předělám a napíšu co se bude dík Update: Tak sem to udělal, nový kód: <meta charset="UTF-8"> <?php # Zpracuj.php if(isset($_POST['send'])) { $banner = $_POST['banner']; $bcg = $_POST['bcg']; $name = $_POST['name']; $vodoznak = $_POST['vodoznak']; $mail = $_POST['mail']; $v1 = $_POST['v1']; $v2 = $_POST['v2']; $v3 = $_POST['v3']; $v4 = $_POST['v4']; $v5 = $_POST['v5']; $c1 = $_POST['c1']; $c2 = $_POST['c2']; $c3 = $_POST['c3']; $c4 = $_POST['c4']; $v5 = $_POST['c5']; $vodoznakp = $_POST['vodoznakp']; $souhlasim = $_POST['souhlasim']; $nick = $_POST['nick']; if($souhlasim!='A') { echo"Někde se vyskytla chyba, omlouváme se!"; die(); } $path = .$nick.'/'.$name.'.html'; if(!is_dir($nick)) { mkdir($nick, 0777); # chmod 777 $file = fopen($path, 'a+'); fwrite($file, 'Server: '.$name.'<br>Miniatura: '.$banner.'<br>Pozadí: '.$bcg.'<br>VodoznakPos '.$vodoznak.'<br>E-mail: '.$mail.'<br>1 Řádek: '.$v1.'<br>2 Řádek: '.$v2.'<br>3 Řádek: '.$v3.'<br>4 Řádek: '.$v4.'<br>5 Řádek: '.$v5.'<br>Barva 1 Řádek: '.$c1.'<br>Barva 2 Řádek: '.$c2.'<br>Barva 3 Řádek: '.$c3.'<br>Barva 4 Řádek: '.$c4.'<br>Barva 5 Řádek: '.$c5.'<br>Smazat vodoznak: '.$vodoznakp.''); fclose($file); } else { if(!file_exists($path)) { $file = fopen($path, 'a+'); fwrite($file, 'Server: '.$name.'<br>Miniatura: '.$banner.'<br>Pozadí: '.$bcg.'<br>VodoznakPos '.$vodoznak.'<br>E-mail: '.$mail.'<br>1 Řádek: '.$v1.'<br>2 Řádek: '.$v2.'<br>3 Řádek: '.$v3.'<br>4 Řádek: '.$v4.'<br>5 Řádek: '.$v5.'<br>Barva 1 Řádek: '.$c1.'<br>Barva 2 Řádek: '.$c2.'<br>Barva 3 Řádek: '.$c3.'<br>Barva 4 Řádek: '.$c4.'<br>Barva 5 Řádek: '.$c5.'<br>Smazat vodoznak: '.$vodoznakp.''); fclose($file); } else { echo' Někde se vyskytla chyba, omlouváme se!'; } } } ?> <p>Pokud nad tímto textem teď zrovna nevidíš errorovou zprávu očekávej mail od media@coompiik.jecool.net! |
||
peta Profil |
#5 · Zasláno: 5. 11. 2013, 07:48:31
$banner = $_POST['banner'];... $arr = explode(",",'banner,bcg,...'); foreach ($arr as $value) {$$value = $_POST[$value];} |
||
Tori Profil |
#6 · Zasláno: 5. 11. 2013, 07:59:13
Coompiik:
„to samí, prázdná stránka“ Pokud je úplně prázdná stránka, tak nejspíš došlo k syntaktické (nebo jiné fatální) chybě. Máte zapnuté zobrazování chyb? viz Nejčastější potíže s PHP (FAQ) » Zapnutí výpisu všech chyb a varování Je toto jediný skript na té stránce, nebo tam jsou i jiné? (tenhle totiž vypadá v pořádku, tak jestli není chyba jinde) |
||
Coompiik Profil |
Tori:
Je to jediné, klidně pošlu celý soubor, podávám se na ten výpis chyb. peta: Ano bylo, dík ale teď už je to jedno kdyš sem to napsal. Update: Tori: Napsal sem to tam, ale moc se v tom neviznám a ani nevim kam se ty chyby vypsaly :/ |
||
peta Profil |
#8 · Zasláno: 6. 11. 2013, 08:10:34
Zkus na zacatek programu napsat tyhle 3 radky php kodu
@ini_set('error_reporting', E_ALL); @ini_set("display_errors", "on"); error_reporting(E_ALL); Dal jsem si kod z [#4] do souboru a pise mi to Parse error: syntax error, unexpected '.' in C:\wamp\www\x\coomplik-php.php on line 33 coz odpovida tvemu radku 29 (protoze jsem tam pridaval error_reporting radky) $path = .$nick.'/'.$name.'.html'; |
||
Coompiik Profil |
peta:
> Dal jsem si kod z [#4] do souboru a pise mi to > Parse error: syntax error, unexpected '.' in C:\wamp\www\x\coomplik-php.php on line 33 > coz odpovida tvemu radku 29 (protoze jsem tam pridaval error_reporting radky) > $path = .$nick.'/'.$name.'.html'; Hmm... Kéž bych tomu rozuměl, google mi toho moc neprozradil... no prostě řekeš mi to pls :-)) já se v tom opravdu vůbec neviznám. PS: Myslím ten error a v tom $path sem chybu nevidel (ale to bude tim ze se v tom vubec neviznam) |
||
han5vk Profil |
Ak chceš trochu lepšie programovať, angličtine sa nevyhneš. Ak by si ju trocha vedel, pochopíš hlášku :)
Chyba je v nadbytočnej bodke pred $nick , oprav si to na
$path=$nick.'/'.$name.'.html'; |
||
Coompiik Profil |
Výborně, dík han5vk a peta, už není bílá stránka ale nikde se mi nevygenerovala složka ani se soubor nikam volně nepochodil :/
|
||
peta Profil |
Coompiik:
Proc by mel soubor pochodovat? Proc pises "neviznam" s i? Zaklad slova je znat, predpodpona vy. Co ty chybove hlasky, co to pise? Pravdepodobne neco s pravy k zapisu. Zkousel jsi tam pouzit tu funkci chmod()? Zkousel jsi si udelat jednoduchy soubor, ktery jen vytvori tu slozku a soubor? Az pak bych to zkousel kombinovat s dalsim kodem. Zkousel jsi udelat echo vysledky funkci? echo "mkdir = " . (mkdir($nick, 0777) * 1); |
||
Tori Profil |
#13 · Zasláno: 7. 11. 2013, 08:14:54
<offtopic>
peta: Proc by mel soubor pochodovat? Proc pises "neviznam" s i? A jste si jist, že vaše psaní bez diakritiky ostatním netrhá oči stejně jako i místo y? </offtopic> Coompiik: Jen pár poznámek: Bylo by IMHO méně náchylné na chybu vytvářet jména složek a souborů bez diakritiky (tj. např. funkcí str_replace změnit znaky s háčky/čárkami/kroužky na znaky bez nich). Kromě rad od peta zkuste používat i absolutní cesty místo relativních: $path = __DIR__ .'/'.$nick.'/'.$name.'.html'; if(!is_dir($nick)) { mkdir(__DIR__.'/'.$nick, 0777); |
||
Coompiik Profil |
#14 · Zasláno: 7. 11. 2013, 21:12:32
peta, Tori:
Dík moc za rady, ale šlo by něco hodně jednodušího pro týpka co se v tom vůbec nevyzná? Já pouze upravuju už vytvořený kódy a snažim se je pochopit, a ohledně tý složky, název složky je input type hidden(prukaz-wanted) a soubor jsem dal žádost bez diakritiky do formuláře. |
||
Časová prodleva: 10 let
|
0