Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] usuwanie rekordów
Forum PHP.pl > Forum > Przedszkole
stoper162
Witam, mam problem z MySql....a mianowicie na swoim piecu mam krasnala i napisałem pod nim skrypt który będzie dodawał, usuwał rekordy z bazy danych. Na kompie mi wszystko śmigało lecz problem pojawił się dopiero wtedy gdy stronę przerzuciłem na jeden z darmowych serverów w sieci... Dodawanie wierszy do bazy działa lecz jest problem z usuwaniem.

Oto kod:
  1. <?php
  2. include('baza.php');
  3. $zapytanie="SELECT * FROM news order by id desc";$wykonaj = mysql_query($zapytanie);
  4. while($wiersz=mysql_fetch_array($wykonaj)) {
  5. echo "<p class=\"list\"><table class=\"list\"><tr><td>".
  6. $wiersz['temat']."</td><td class=\"list\"> - <a href=\"kasuj_news.php?stan=del&iddel=".$wiersz['id']."\">usun</a></p></td></tr></table>";}
  7. ?>


Plik kasuj_news.php :
  1. <?php
  2. if($stan=='del') {
  3. include('baza.php');
  4. $zapytanie2="DELETE FROM `news` WHERE `id`= '{$_GET['iddel']}'";
  5. $wynik2 = mysql_query($zapytanie2);
  6. echo "Rekord o id=$iddel został skasowany";}
  7. ?>
  8. <br><a href="index.php">Strona główna</a>

`id`= '{$_GET['iddel']}' zapisywałem w różnych postaciach np id=$iddel ale to nic nie dawało...

Po kliknieciu "usun" adres strony wygląda nastepujaco:
  1. <?php
  2. <a href=&#092;"http://strona.org/kasuj_news.php?stan=del&iddel=2\" target=\"_blank\">http://strona.org/kasuj_news.php?stan=del&iddel=2</a>
  3. ?>

Z tego wynika że nr id jest przypisany do zmiennej iddel, więc rekord powinien byc usuniety a niestety efektu nie ma...

Mam nadzieje że ktoś rozwiąże mój problem...
nospor
Do zmiennych z url nalezy dobierac sie tak: $_GET['zmienna'] a nie tak: $zmienna.

Czyli ty masz tak: $stan
Masz wiec to zamienic na: ..... tu sobie sam odpowiedz smile.gif

ps: to nie ma zwiazku z mysql. Przenosze
ps2: wywal te "not working" z tematu exclamation.gif!
stoper162
Ok zastosowałem sie do twoich uwag:
  1. <?php
  2. include('baza.php');
  3. $zapytanie="SELECT * FROM news order by id desc";
  4. $wykonaj = mysql_query($zapytanie);
  5. while($wiersz=mysql_fetch_array($wykonaj)) {
  6. echo "<p class=\"list\"><table class=\"list\"><tr><td>".
  7. $wiersz['temat']."</td><td class=\"list\"> - <a href=\"kasuj_news.php?$_GET['stan']=del&iddel=".$wiersz['id']."'\">usun</a> | 
  8. <a href=\"news_edit.php?stan=modyf&idmodyf=".$wiersz['id']."\">edytuj</a></p></td></tr></table>";}
  9. ?>

wywaliło mi:
  1. <?php
  2. Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:usrkrasnalwwwdarksoulswebsidezarzadzaj_newsami.php on line 7
  3. ?>


piszac w ten sposób:
  1. <?php
  2. include('baza.php');
  3. $zapytanie="SELECT * FROM news order by id desc";
  4. $wykonaj = mysql_query($zapytanie);
  5. while($wiersz=mysql_fetch_array($wykonaj)) {
  6. echo "<p class=\"list\"><table class=\"list\"><tr><td>".
  7. $wiersz['temat']."</td><td class=\"list\"> - <a href=\"kasuj_news.php?'$_GET['stan']=del&iddel=".$wiersz['id']."'\">usun</a> | 
  8. <a href=\"news_edit.php?stan=modyf&idmodyf=".$wiersz['id']."\">edytuj</a></p></td></tr></table>";}
  9. ?>

w adresie strony widac ze zmienna ginie:
  1. <?php
  2. <a href=&#092;"http://localhost/~darksoulswebside/kasuj_news.php?=del&iddel=13\" target=\"_blank\">http://localhost/~darksoulswebside/kasuj_n...el&iddel=13</a>
  3. ?>


Nie wiem jak to zapisac...
nospor
ech... wogole nie zajarzyles.
Pierwszy skrypt ma zostac bez zmian. Tam nie masz nic z url. Dopiero w drugim masz:
  1. <?php
  2. if($stan=='del')
  3. ?>

Przeciez $stan pochodzi z URL i ma byc tak:
  1. <?php
  2. if($_GET['stan']=='del')
  3. ?>
stoper162
Nom, teraz chodzi wszystko tak jak trzeba biggrin.gif
Dzięki wielkie za pomoc... ;]
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.