Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]tworzenie listy - zapisywanie do pliku
Forum PHP.pl > Forum > Przedszkole
didlet
Witam wszystkich winksmiley.jpg

na wstępie chciałbym przywitać się z całą społecznością tego forum i powiedzieć HELLO smile.gif

a teraz do rzeczy, potrzebuje zrobić listę osób które chcą brać udział w poprawie egzaminu... ludzie z mojego roku są troszkę mało sprytni i wymyślili bardzo ciekawy sposób - ściągnąć plik, dopisać się do niego i wgrać spowrotem na pocztę... i to wszystko na wp gdzie sesja jest zamykana po zalogowaniu się drugiej osoby na pocztę... ale mniejsza o to, chcąc troszkę usprawnić ten system, pomyślałem że można to zrobić na zasadzie prostego POSTa w php... znalazłem krótką instrukcje co i jak, jednak gdy wrzucam pliczki na serwer, plik php nie zapisuje danych do pliku txt - po kliknięciu wyślij, pokazuje się zawartość pliku php...

oto moje kody:

plik index.html
Kod
<html>
<body>
<form action="dodaj.php" method="post">
Imię: <input type="text" name="imie" /><br />
Nazwisko: <input type="text" name="nazwisko" /><br />
Grupa: <input type="text" name="grupa" /><br />
<input type="submit" name="button" value="wyslij" />
</form>
</body>

</html>


dodaj.php
Kod
?php
if ($_POST['button'] == "wyslij") {
/* sprawdzam czy dane zostały wysłane z formularza */
  $plik = "db.txt";
  if (is_writeable($plik)) {
  /* sprawdzam czy plik jest do zapisu */
    if (!$handle = fopen($plik, "a")) echo "Nie mogę otworzyć pliku...";
    if (fwrite($handle, $_POST['imie']." || ".$_POST['nazwisko']." || ".$_POST['grupa']."
") === FALSE) echo "Nie mogę zapisać danych do pliku...";
      else echo "Dane zostały dodane...";
    fclose($handle);

  } else echo "Plik nie istnieje lub jest nie do zapisu...";
}
?>


oczywiście plik db.txt jest na serwerze z pełnymi uprawnieniami (666)...
i moje pytanko, co robie źle? winksmiley.jpg troszke mnie już to męczy, a głupio mi bo kiedyś studiowałem informatyke i robiłem takie rzeczy... ale z upływem czasu niemal cała wiedza poszła z dymem ;p

pozdrawiam, didlet


EDIT:
ok juz niewazne haha.gif oczywiście kod jest dobry, tylko jak zwykle literówka... zabrakło znaku "<" na samym poczatku ....

teraz problem z odczytaniem danych... poniżej opisany problem ;p
jajcarzd1
No ale jak rozumiem masz jakiś swój serwer albo jakiś hosting na którym możesz odpalić te instrukcje ? Po drugie jakie masz błędy co jest nie tak ?
didlet
oczywiście, serwer mam, pliczki są już na serwerze i post ładnie działa winksmiley.jpg jak napisałem w edit - zabrakło znaku "<" na rozpoczęciu sekcji php....

teraz jednak nie mogę dojść czemu nie wyświetla mi danych z pliku...

Kod
<?php
$plik = "db.txt";
$dane = file($plik); /* pobieram dane z pliku i zapisuje do tablicy (linia = rekord) */

for($i=0;$i<count($dane);$i++) { /* przeszukuję tablicę */
  list($imie[$i], $nazwisko[$i], $grupa[$i]) = explode(" || ", $dane[$i]);
   /* dziele linię na tablicę i zapisuje dane do odpowiednich zmienncyh */
}

for($i=0;$i<count($imie);$i++) /* przeszukuję tablicę */
   echo $imie[$i]." ".$nazwisko[$i].", ".$grupa[$i]."<br />";
   /* wyświetlam dane */

?>



wszystko dostępne pod adresem http://rachunkowoscfirm.olsztyn.pl/didlet/dodaj/ - żeby nie było że próbuje pliki odpalić na dysku...
marcio
  1. $f = file('db.txt');
  2. foreach($f as $line)
  3. echo($line);
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.