Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]dba dodawanie komentarzy
Forum PHP.pl > Forum > Przedszkole
NeronRS
Witam!
Napisałem swój pierwszy skrypt z bazą danych dba
Niestety nie działa wstydnis.gif cool.gif
  1. <?php
  2. echo '';
  3.  
  4.  $baza1 = dba_open(&#092;"wpis.db\", \"w\", \"gdbm\");
  5.  $nowy_wpis = $_POST['tekst'];
  6.  $dlugsc_nowego_wpisu = strlen($nowy_wpis);
  7.  $ilosc_wpisow = dba_fetch(&#092;"ilosc_wpisow\", $baza1);
  8.  
  9.  
  10.  IF ($dlugsc_nowego_wpisu > 1)
  11.  {
  12.      IF ($ilosc_wpisow > 0)
  13.      {
  14.      $ilosc_wpisow = $ilosc_wpisow+1;
  15.      dba_replace(&#092;"ilosc_wpisow\", $ilosc_wpisow, $baza1);
  16.      }
  17.      else
  18.      {
  19.      $ilosc_wpisow = 1;
  20.      }
  21.      
  22.  $nazwa_wpisu = &#092;"wps\";
  23.  $nazwa_wpisu .= $ilosc_wpisow;
  24.  
  25.     dba_replace($nazwa_wpisu, $nowy_wpis, $baza1);
  26.    
  27.  }
  28.  else
  29.  {
  30.      IF ($ilosc_wpisow < 1)
  31.      {
  32.      $ilosc_wpisow = 0;
  33.      dba_replace(&#092;"ilosc_wpisow\", 0, $baza1);
  34.      }
  35.  }
  36.  
  37.  while($ilosc_wpisow > 0)
  38.  {
  39.  $ilosc_wpisow = $ilosc_wpisow-1;
  40.  $nazwa_wpisu = &#092;"wps\";
  41.  $nazwa_wpisu .= $ilosc_wpisow;
  42.  $wyswietlany_wpis = dba_fetch($nazwa_wpisu, $baza1);
  43.  echo $wyswietlany_wpis;
  44.  echo '
  45.  
  46.  ';
  47.  }
  48.  
  49.  echo'
  50.  
  51.  
  52.      
  53.      Dopisz się:
  54.  
  55.          
  56.  ';
  57.  
  58.  
  59.  ?>


Nie wiem gdzie jest błąd dry.gif
Proszę o pomoc
Pilsener
Cytat
Niestety nie działa
- no dobrze, ale co nie działa? Wyświetla jakieś błędy? Są jakiekolwiek efekty? Co ten skrypt ma robić? Masz w ogóle zainstalowane rozszerzenie DBA do obsługi tych baz? Musisz mieć w php.ini, dział extensions:
Kod
extension=php_dba.dll
- bez średnika na początku. Daj echo phpinfo() żeby zobaczyć, czy masz to w ogóle zainstalowane.
NeronRS
Ma dba
Dzięki temu skryptowi miało się dodawać komentarze
jareeny
A jakieś komunikaty błędów, coś więcej? Nie mamy zamiaru tutaj zgadywać co Ci nie działa... ;|
nevt
Pierwszy i zasadniczy błąd masz w temacie tego posta. Popraw go, bo aż w oczy kole. Chyba nie wziąłeś się za naukę języka programowania przed nauką języka ojczystego?
NeronRS
Nie wyświetla nawet żadnego komunikatu błędu ;/
ArekJ
Dodaj może ERROR_REPORTING_ALL na początku to może wywali jakieś błędy.
NeronRS
Dalej nie wyświetla żadnego błędu ;/
Nie zmienia się rozmiar pliku wpis.db
Vexator
po każdym dba_cośtam() dodaj or die(); wtedy przy niepowodzeniu operacji musi się sypnąć.

dba_replace("ilosc_wpisow", $ilosc_wpisow, $baza1) or die();
NeronRS
Poprawiłem kod ale dalej nie działa ;/
Kod
<?php

echo '<html><head><meta http-equiv="Content-type" content="text/html; charset=iso-8859-2">';

$baza1 = dba_open("wpis.db", "w", "gdbm") or die();
$nowy_wpis = $_POST['tekst'];
$dlugsc_nowego_wpisu = strlen($nowy_wpis);
$ilosc_wpisow = dba_fetch("ilosc_wpisow", $baza1) or die();


IF ($dlugsc_nowego_wpisu > 1)
{
    IF ($ilosc_wpisow > 0)
    {
    $ilosc_wpisow = $ilosc_wpisow+1;
    dba_replace("ilosc_wpisow", $ilosc_wpisow, $baza1) or die();
    }
    else
    {
    $ilosc_wpisow = 1;
    }
    
$nazwa_wpisu = "wps";
$nazwa_wpisu .= $ilosc_wpisow;
$nazwa_wpisu .= "";

   dba_replace($nazwa_wpisu, $nowy_wpis, $baza1) or die();
  
}
else
{
    IF ($ilosc_wpisow < 1)
    {
    $ilosc_wpisow = 0;
    dba_replace("ilosc_wpisow", 0, $baza1) or die();
    }
}

while($ilosc_wpisow > 1)
{
$ilosc_wpisow = $ilosc_wpisow-1;
$nazwa_wpisu = "wps";
$nazwa_wpisu .= $ilosc_wpisow;
$nazwa_wpisu .= "";
$wyswietlany_wpis = dba_fetch($nazwa_wpisu, $baza1) or die();
echo $wyswietlany_wpis;
echo '
<br>';
}

echo'<br><br>
    <form method="post" action="dodaj_wpis.php">
    Dopisz się: <input type="text" name="tekst"/><br/>
    <input type="submit" value="OK"/>    
';


?>

</body>
</html>


Na stronie nie wyświetla nic a w jej kodzie źródłowym widocznym z przeglądarki tylko
Kod
<html><head><meta http-equiv="Content-type" content="text/html; charset=iso-8859-2">
erix
Masz na pewno odpalone rozszerzenie DBA? Bo mam szczere wątpliwości...
NeronRS
Jak bym nie miał tego rozszerzenia to jak je wgrać??
matixrr
Myśl, myśl, myśl!

Cytat(Pilsener @ 3.12.2008, 10:21:27 ) *
Musisz mieć w php.ini, dział extensions:
Kod
extension=php_dba.dll


Jakbys mial zadac kolejne pytanie to najpierw wpisz sobie php_dba.dll w Google!
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.