Olen tekemässä chat ohjelmaa php:lla. Teen siihen public chatin sekä mahdollisuuden mennä kaverin kanssa omaan "huoneeseen". Jokaisella chatilla on oma tietokantatiedostonsa. Miten voin php:lla tehdä tietyn nimisen tyhjän txt tiedoston, johon sillä ohjelmalla on täydet oikeudet?
touch-funktiolla voit tehdä tiedostoja.
Toimii muuten, paitsi:
Warning: touch(): Unable to create file lm_chat.txt because Permission denied in /home/touho/touho/chat/priv.php on line 20
Laitoin priv.php:n oikeuksiin "7777". Onko niin, että mulla ei ole kyseisellä serverillä oikeutta tehdä tiedostoja?
EDIT: Kun laitan sinne 7777 ja tallennan, uudestaan katsoessani se on muuttunut: 0777. Johtuuko se tästä?
Tuon tiedoston oikeuksien ei ainakaan pitäisi vaikuttaa siihen , keillä kaikilla on oikeus käydä luomassa sinne tiedostoja. Ennemminkin kannattaisi tarkistaa sen kansion oikeudet, minne olet luomassa niitä tiedostoja.
Ja niistä oikeuksista ja niiden numeroista vielä sen verran, että yleensä ne ilmoitetaan kolmen merkin pituisella oktaaliluvulla (8-kantainen lukujärjestelmä). Ensimmäinen numero kertoo omistajan oikeudet, toinen numero saman käyttäjäryhmän oikeudet ja viimeinen kaikkien käyttäjien oikeudet. 1 = suoritusoikeus, 2 = kirjoitusoikeus, 4 = lukuoikeus. Muut oikeudet ovat summia näistä (esim. 7 = 4 + 2 + 1 = kaikki oikeudet, 5 = 4 + 1 = luku- ja suoritusoikeus, mutta ei kirjoitusoikeutta).
Toisin sanoen tuollaista oikeusyhdistelmää "7777" ei ole olemassakaan ja 0777 tarkoittaa sitä, että tiedostoon on kaikilla käyttäjillä vapaat käyttöoikeudet (0 luvun alussa kertoo vain luvun olevan oktaalijärjestelmässä esitetty).
7777???? Siis tarkoitathan 777
Chmod olisi varmaan sinullekin vain kaikkea hyvää Touho:
http://www.cs.tut.fi/~jkorpela/unix/7.10.html
http://www.zerodistance.fi/ohjeet/chmod.php
Aihe on jo aika vanha, joten et voi enää vastata siihen.