Chyba v nastaveni php ? – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Chyba v nastaveni php ? – PHP – Fórum – Programujte.comChyba v nastaveni php ? – PHP – Fórum – Programujte.com

 

Radek
~ Anonymní uživatel
133 příspěvků
2. 8. 2015   #1
-
0
-

Dobrý den, mám lighttpd server běžící na banana pi . Potřeboval bych měnit hodnotu v souboru txt . Mám na indexové stránce radio a submit akorát po odeslání hodnoty se mi vypíše chybová hláška "can't open file" a do txt souboru se daná hodnota nezapíše. 
 
index.php

<?
if (isset($_POST['status'])) {
   $fh = fopen("ledstatus.txt", 'w') or die("can't open file");
   $on = $_POST['status'];
   fwrite($fh, $on);
   fclose($fh);

} else {
   $fh = fopen("ledstatus.txt", 'r');
   $on = fread($fh, 1);
   fclose($fh);
}
?>
<!DOCTYPE HTML>
<html>
<body>
<form action="index.php" method="post">
   <label> <input type="radio" name="status" <?if ($on) {echo 'checked = "checked"';} ?> value="1">On</label>
   <label> <input type="radio" name="status" <?if (!$on) {echo 'checked = "checked"';} ?> value="0">Off</label>
   <input type="submit" value="Submit">
</form>
</body>
</html>
Nahlásit jako SPAM
IP: 82.100.10.–
sakal910
Stálý člen
2. 8. 2015   #2
-
0
-

ahoj, zkontroluj si prava toho souboru... Pokud bude mit jine prava nez 775 nebo 777 tak mu zkus nastavit jedno z tech dvou a dej vedet kdyby to nepomohlo :-) 

Nahlásit jako SPAM
IP: 31.222.0.–
peter
~ Anonymní uživatel
4014 příspěvků
3. 8. 2015   #3
-
0
-

2. Nez neco otevres, dobre je zkusit nejdriv fileexists.
3. pokud stejny program pouzivaji 2 lide, je dobre pouzivat flock a while se sleepem (viz priklad na php.net k funkci  fopen nebo flock), jinak o obsah toho souboru prijdes.

Nahlásit jako SPAM
IP: 2001:718:2601:1f7:b90f:84...–
Kit+15
Guru
3. 8. 2015   #4
-
0
-

#3 peter
2. Tohle se z bezpečnostních důvodů nedělá.

3. flock() se už také nepoužívá.

Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:207:e...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Radek
~ Anonymní uživatel
133 příspěvků
6. 8. 2015   #5
-
0
-

sakal91: Díky moc :) bylo to v těch právech já si do teďka myslel, že přes scripty nepotřebuju nastavovat práve myslel jsem že PHP to má takto ošetřené :).

peter v tom souboru se bude měnit jen hodnota 0/1 takže mě to až tak nepálí.

Nahlásit jako SPAM
IP: 82.100.10.–
sakal910
Stálý člen
8. 8. 2015   #6
-
0
-

#5 Radek
Ve zkratce... Na hostingu běží linux, na tom linuxu běží webový server (apache s php) který ma na tom linuxu vytvořený normalni uživatelský účet pro který platí stejná pravidla pro přístup k souborům jako u všech uživatelských účtu na linuxu :-) Druhá věc je, když používáš windows, tak tam se nějaké práva souborů/složek vůbec neřeší takže to všechno krásně funguje do doby než to právě nahraješ na hosting/linux který Je v tomto směru velmi důsledný :-)

Nahlásit jako SPAM
IP: 31.222.0.–
peter
~ Anonymní uživatel
4014 příspěvků
10. 8. 2015   #7
-
0
-

sakal910 - ve zkratce. Hostingovy ucet je linuxovy. Uzivatel hostingove muze manipulovat se soubory. Ale pro php je treba to zvlast povolit.

Nahlásit jako SPAM
IP: 2001:718:2601:1f7:fd44:63...–
sakal910
Stálý člen
10. 8. 2015   #8
-
+1
-
Zajímavé
Kit +

#7 peter
Promiň, ale nějak mi uniká smysl toho komentáře (ještě jsem neměl ani kafe dneska tak to bude určitě tím :-D )... V podstatě jsi napsal to stejné co sem napsal já... Máš hosting (klasická složka v tom linuxovem serveru nastavená v apache atd atd... nebudu to tady rozepisovat, věřím že si to dokážeš zjistit jak to funguje :) ) kde je vlastníkem nějaký uživatel (to si TY)... V té "složce" si můžeš dělat co jen chceš, nahrávat, mazat atd (jsi VLASTNÍKEM té složky)... no a pak máš ten web. server (apache), který má na tom serveru (linux) vytvořený klasický uživ. účet + skupinu (defaultně apache + apache, jde změnit v httpd.conf)... PHP běží pod apache, třeba jako modul, takže to je součast apache (zjednodušeně řečeno)... no a jak už to v linuxu bývá, jeden uživatel nemůže pracovat se soubory druhého uživatele aniž by ty soubory neměli nastavené potřebná práva (vyjímkou je superuživatel alias root)... Takže když já na ten hosting něco nahraju, tak ten soubor má defaultně práva 644 (6- rw 4-r pořadí: Vlastník-skupina-ostatní) takže z toho jasně vyplývá že pokud ty práva nezměním, tak apache(php) může ten soubor číst ale nic víc :) 

Omlouvám se za zmatený popis, jdu si udělat to kafe :D

Nahlásit jako SPAM
IP: 195.144.106.–
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, 17 hostů

Podobná vlákna

Chyba v PHP scriptu — založil Sasha

Chyba v PHP kódu. — založil pari

 

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