Chybí tečka v odeslaném názvu souboru přes formulář – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Chybí tečka v odeslaném názvu souboru přes formulář – PHP – Fórum – Programujte.comChybí tečka v odeslaném názvu souboru přes formulář – PHP – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Kall_Ell0
Návštěvník
3. 8. 2010   #1
-
0
-

Ahoj všem, řeším zajímavej problém. Mám udělanou takovou malou fotogalerii. Pod každou fotkou mám checkbox jehož hodnota name se rovná názvu souboru fotky, např. "img0054.jpg". Pokud zaškrtnu několik poli nebo i jedno, je to fuk, a odešlu formulář tak přes POST přijde pole s hodnotami Array ( [img0054jpg] => on, .... ) . Což teda nechápu, kam se poděla ta tečka? není to náhodou nějaká bezpečnostní věc? Mám instalovanou PHP verzi 5.3.0

Nahlásit jako SPAM
IP: 80.87.188.–
Reklama
Reklama
marioff0
Expert
3. 8. 2010   #2
-
0
-

identifikatory mozu obsahovat len pismena, cisla a znak podtrhnutia _ , cize to asi plati aj v tomto pripade... :)

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
z_moravec
~ Redaktor
+3
Posthunter
4. 8. 2010   #3
-
0
-

To Kall_Ell : Podívej se do pole $_FILES, ne $_POST

To marioff : Identifikátor prvku pole (klíč) může být jakýkoliv string.

Nahlásit jako SPAM
IP: 147.251.29.–
Spát lze čtyři hodiny denně, spát déle je nemístný přepych.
Thomas Alva Edison
marioff0
Expert
4. 8. 2010   #4
-
0
-

To z_moravec : mas pravdu, len identifikator premennej moze obsahovat a-zA-Z0-9_ , prvku pola cokolvek ...

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
Kall_Ell0
Návštěvník
4. 8. 2010   #5
-
0
-

To z_moravec : v proměnné files je to stejný, tak bez tečky. Si ten název souboru budu muset asi upravit a tečku tam přidat.

Nahlásit jako SPAM
IP: 80.87.188.–
Kall_Ell0
Návštěvník
4. 8. 2010   #6
-
0
-

Teď jsem si všiml jedné věci. Ještě jednou jsem si zkontroloval jestli je ve formuláři v name="", napsaný soubor s tečkou, níže uvádím kousek kódu jednoho zobrazeného obrázku.



<td>
<img src='images/galerie/4_260710115221/nahledy/4_image_373.jpg'> <br>
4_image_373.jpg<br>
<input type='checkbox' name='4_image_373.jpg'>
</td>

Takže název souboru do formuláře dosadí php script správně. Po odeslání formuláře mám hned na začátku, ještě před zpracováním scriptu, příkaz print_r($_POST); abych viděl co přesně mě přiletí POSTem. No a už tam je vidět, že tečka chybí, ale všiml jsem si, že přibylo podtržítko. Nevím kde, ve které fázi, ale pravděpodobně server mě nahradil tečku podtržítkem.

Nahlásit jako SPAM
IP: 80.87.188.–
z_moravec
~ Redaktor
+3
Posthunter
4. 8. 2010   #7
-
0
-

Nepoužíváš nějakou knihovnu nebo framework, který ti drbe do těch dat? Standardně by to rozhodně nemělo dělat.

Nahlásit jako SPAM
IP: 147.251.29.–
Spát lze čtyři hodiny denně, spát déle je nemístný přepych.
Thomas Alva Edison
marioff0
Expert
4. 8. 2010   #8
-
0
-

este ma napadol register_globals ... je vypnuty??

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
Kall_Ell0
Návštěvník
4. 8. 2010   #9
-
0
-

Register globals je vypnutý, famework jsem zkoušel PHP nette, ale na na té galerii, tu jsem si udělal kompletně sám. Mám nainstalovaný wampserver 2.0 (php 5.3.0 + apache 2 + 2.2.11 + 5.1.36). Napadlo mě, že to bude někde v tom wampserveru, ale fakt netuším.

Nahlásit jako SPAM
IP: 80.87.188.–
zdenda
~ Anonymní uživatel
257 příspěvků
5. 8. 2010   #10
-
0
-

Píšeš, že přijde pole, ale v tom HTML žádné pole nemáš. Tečky v jednoduchém jméně se nahrazují podtržítky, to je normální chování.
Jednoduše to můžeš vyřešit třeba právě tím polem (v názvech klíčů pole se to nahrazení nedělá). Čili:

<input type='checkbox' name='vyber[4_image_373.jpg]'>

Nahlásit jako SPAM
IP: 213.211.51.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 44 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý