Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skrypt do przechowywania listy
Forum PHP.pl > Forum > Przedszkole
septem
Witam! Odrazu chce zaznaczyc, ze php nie znam i ze to jest moj pierwszy i raczej ostatni skrypt (chociaz nic nie wiadomo...) Ale do rzeczy- naskrobalem taki kod do zapisywania listy serwerow:
  1. <?php
  2.  
  3. if($_POST['komenda'] == "s")
  4. {
  5. $licz1 = $_POST['1'];
  6. $licz2 = $_POST['2'];
  7. $str1 = $_POST['3'];
  8. $str2 = GetHostByName($REMOTE_ADDR);
  9.  
  10. $zlepek = $licz1.'|'.$licz2.'|'.$str1.'|'.$str2.'<BR>';
  11.  
  12. $file = "lista.html";
  13. chmod($file, 777);
  14. $sp = fopen($file, "a");
  15. flock($sp, 2);
  16. fwrite($sp, $zlepek);
  17. flock($sp, 3);
  18. fclose($sp);
  19. echo "saved";
  20. }
  21.  
  22. if($_POST['komenda'] == "r")
  23. {
  24. $fp = fopen("lista.html", "r");
  25. $odczyt = fread($fp, filesize("lista.html"));
  26.  
  27. $tab = explode('<BR>', $odczyt);
  28.  
  29. for($i=0;i<count($tab);$i++)
  30. {
  31.  echo $tab[i];
  32. }
  33.  
  34. fclose($fp);
  35. }
  36.  
  37. if($_POST['komenda'] == "e")
  38. {
  39. $lp = fopen("lista.html", "w");
  40. $odczyt = fread($lp, filesize("lista.html"));
  41. $zmiana = $_POST['int'];
  42. $ip = GetHostByName($REMOTE_ADDR);
  43. $tab = explode('<BR>', $odczyt);
  44.  
  45. flock($lp, 2);
  46. for($i=0;i<count($tab);$i++)
  47. {
  48.  $wsio = explode('|', $tab[i]);
  49.  if ($wsio[1] == $ip){
  50.  $wsio[2] = $zmiana;
  51. }
  52.  $tab[i] = $wsio[0].'|'.$wsio[1].'|'.$wsio[2].'|'.$wsio[3].'<BR>';
  53.  fwrite($lp, $tab[i]);
  54. }
  55. flock($lp, 3);
  56.  
  57. fclose($lp);
  58. echo "edited";
  59. }
  60.  
  61.  
  62.  
  63. if($_POST['komenda'] == "d"){
  64. $fp = fopen("lista.html", "w");
  65.  
  66. $tab = explode('<BR>', $odczyt);
  67.  
  68. flock($fp, 2);
  69. for($i=0;i<count($tab);$i++)
  70. {
  71.  $wsio= explode('|', $tab[i]);
  72.  if ($wsio[1] != GetHostByName($REMOTE_ADDR)){
  73. fwrite($fp, $tab[i]);
  74. }
  75. }
  76. flock($fp, 3);
  77.  
  78. fclose($fp);
  79. }
  80.  
  81. ?>

i niby dziala, nie wywala zadnych bledow, a mimo to w lista.html nic nie ma sad.gif Odrazu tez zaznaczam, ze chmod lista.html jest ustawiony na 777. Z gory dzieki za pomoc...

Bym zapomnial: s-zapisywanie, r-odczytywanie, d-kasowanie, e-edycja.

Ps. przy tym if($_POST['komenda'] == "s") nie ma '/' , nie wiem skad to sie bierze :\
Ociu
w drugiej linijce ( zaraz po <?php) daj
  1. <?php
  2. ?>


Dawaj po każdym działaniem napis co skrypt robi, np.

  1. <?php
  2. echo ' Sprawdzam $_POST[komenda]<br />';
  3. if($_POST['komenda'] == "s")
  4. {
  5. echo 'Wybrana komenda: s<br />';
  6. ?>


Ps. nie lepiej zapisywać dane w pliku txt lub dat ? dry.gif
septem
Wywala mi cos takiego:

Notice: Undefined index: komenda in /var/www/sites/yoyo.pl/c/s/css-clan/skrypt.php on line 3

wczesniej wywalalo przy kazdym sprawdzaniu, ale zmienilem nieco kod i do zmiennej $komenda jest przypisywane $_POST['komenda'];
Ociu
Na pewno istnieje input o nazwie komenda ?

Daj na początku
if(!isset($_POST['komenda'])) exit('nie istnieje komenda');
septem
Omg, moj blad, zamiast dac $_GET dalem $_POST sad.gif W kazdym razie dzieki za pomoc smile.gif Do zamkniecia...
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.