Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Edycja i usuwanie rekordów bazy danych
Forum PHP.pl > Forum > PHP
k0b3
Bezproblemowo mogę dodawać rekordy do bazy danych, natomiast jest problem z usuwanie i edycja...

edit.php
  1. <?
  2. $id=$_GET['id'];
  3.  
  4. include("config.php");
  5. mysql_connect($db_host,$username,$password);
  6. @mysql_select_db($database) or die("Nie odnaleziono bazy danych");
  7. $query=" SELECT * FROM mecze WHERE id='$id'";
  8. $result=mysql_query($query);
  9. $num=mysql_numrows($result);
  10.  
  11.  
  12. $i=0;
  13. while ($i < $num) {
  14.  
  15. $data=mysql_result($result,$i,"data");
  16. $przeciwnik=mysql_result($result,$i,"przeciwnik");
  17. $krajpl=mysql_result($result,$i,"krajpl");
  18. $krajue=mysql_result($result,$i,"krajue");
  19. $typ=mysql_result($result,$i,"typ");
  20. $mapy=mysql_result($result,$i,"mapy");
  21. $my=mysql_result($result,$i,"my");
  22. $oni=mysql_result($result,$i,"oni");
  23.  
  24. include('template/edit.tpl');
  25.  
  26. ++$i;
  27. }
  28. ?>


edit.tpl
  1. <form action="update.php" method="post">
  2. <input type="text" name="ud_id" value="<? echo $id; ?>">
  3. <table width="800" border="0" align="center" cellpadding="3" cellspacing="1" class="forumline">
  4. <tr>
  5. <th colspan="6">Sparingi</th>
  6. </tr>
  7. <tr>
  8. <td width="11%" height="32" align="center" class="row1"><span class="explaintitle">Data</span></td>
  9. <td width="17%" height="32" align="center" class="row1"><span class="explaintitle">Przeciwnik</span></td>
  10. <td width="6%" height="32" align="center" class="row1"><span class="explaintitle">Kraj</span></td>
  11. <td width="15%" height="32" align="center" class="row1"><span class="explaintitle">Typ</span></td>
  12. <td width="32%" height="32" align="center" class="row1"><span class="explaintitle">Mapy</span></td>
  13. <td class="row1"><table border="0" cellpadding="3" cellspacing="1" width="100%">
  14. <tr>
  15. <td width="50%" align="center" bgcolor="#00FF00"><span class="nav8">My</span></td>
  16. <td width="50%" align="center" bgcolor="#FF00CC"><span class="nav8">Oni</span></td>
  17. </table></td>
  18. </tr>
  19. <tr>
  20. <td width="11%" height="32" align="center" class="row1"><span class="explaintitle">
  21. <input type="text" name="ud_data" value="<? echo $data; ?>" class="post">
  22. </span></td>
  23. <td width="17%" align="center" class="row2"><span class="nav7"><b>
  24. <input type="text" name="ud_przeciwnik" value="<? echo $przeciwnik; ?>" class="post">
  25. </b></span></td>
  26. <td width="6%" align="center" class="row2"><span class="nav7">
  27. <input type="checkbox" name="krajpl" class="post" value="ud_krajpl" checked="checked"><img src="img/polska.gif"><br>
  28. <input type="checkbox" name="krajue" class="post" value="ud_krajue"><img src="img/unia.gif" >
  29.  
  30.  
  31.  
  32. </span></td>
  33. <td width="15%" align="center" class="row2"><input type="text" name="ud_typ" value="<? echo $typ; ?>" class="post"></td>
  34. <td width="32%" align="center" class="row2"><span class="nav7">
  35. <input type="text" name="ud_mapy" value="<? echo $mapy; ?>" class="post">
  36. </span> </td>
  37. <td width="19%" align="center" class="row2"><span class="nav7">
  38. <table border="0" cellpadding="3" cellspacing="1" width="100%">
  39. <tr>
  40. <td width="50%" height="25" align="center" bgcolor="#00FF00"><span class="nav9">
  41. <input type="text" name="ud_my" value="<? echo $my; ?>" class="post"/>
  42. </span></td>
  43. <td width="50%" align="center" bgcolor="#FF00CC"><span class="nav9">
  44. <input type="text" name="ud_oni" value="<? echo $oni; ?>" class="post">
  45. </span></td>
  46. </tr>
  47. </table>
  48. </span></td>
  49. </tr>
  50. <br>
  51. <input type="Submit" value="Aktualizuj" class="mainoption"></center>
  52. </form>


oraz skrypt wykonujący edycje

update.php
  1. <?
  2.  
  3. include("config.php");
  4.  
  5. $ud_id=$_POST['ud_id'];
  6. $ud_data=$_POST['ud_data'];
  7. $ud_przeciwnik=$_POST['ud_przeciwnik'];
  8. $ud_krajpl=$_POST['ud_krajpl'];
  9. $ud_krajue=$_POST['ud_krajue'];
  10. $ud_typ=$_POST['ud_typ'];
  11. $ud_mapy=$_POST['ud_mapy'];
  12. $ud_my=$_POST['ud_my'];
  13. $ud_oni=$_POST['ud_oni'];
  14.  
  15.  
  16.  
  17. mysql_connect($db_host,$username,$password);
  18. @mysql_select_db($database) or die("Nie odnaleziono bazy danych");
  19. $query="UPDATE mecze SET data='$ud_data', przeciwnik='$ud_przeciwnik', krajpl='$ud_krajpl', krajue='$ud_krajue', typ='$ud_typ', mapy='$ud_mapy', my='$ud_my', oni='$ud_oni'WHERE id='$ud_id'";
  20. mysql_query($query);
  21. echo "Rekord zaktualizowany";
  22.  
  23. ?>
  24. <META HTTP-EQUIV=Refresh CONTENT="0; URL=edit.php">


Kod skryptu jest zaczerpnięty z:
http://wortal.php.pl/phppl/wortal/artykuly...usuwanie_danych
.. i zmieniony dla własnych potrzeb...

Ładując strone /edit.php nic poprostu sie nie dzieje - jest pusta strona.
gdy zmieniam w edit.php
  1. <?php
  2. $query=" SELECT * FROM mecze WHERE id='$id'";
  3. ?>

na
  1. <?php
  2. $query=" SELECT * FROM mecze";
  3. ?>

...skrypt się ładuje, ale nie da sie zmienić wpisu...
a z usuwaniem, to juz zupelnie nie wiem jak sie zabrac

z góry dziękuje za pomoc (zaznaczam jestem początkującym) worriedsmiley.gif


PS. nie wiem czemu, ale jak wrzucam na forum robią się w kodzie slash "\" blinksmiley.gif
KotDomowy
Mozliwe, ze problem lezy w tej linii:

  1. <?php
  2. $query="UPDATE mecze SET data='$ud_data', przeciwnik='$ud_przeciwnik', krajpl='$ud_krajpl', krajue='$ud_krajue', typ='$ud_typ', mapy='$ud_mapy', my='$ud_my', oni='$ud_oni'WHERE id='$ud_id'";
  3. ?>


a mianowicie na tym, ze wpis miedzy wpisem oni='$ud_oni' i WHERE nie ma spacji. Jest to blad skladni SQL-a i update nie dziala (chyba, ze jest tam spacja, a ja mam dziwna czcionke)
k0b3
nie nie... błąd w kopiowaniu smile.gif Zanim napisałem tego posta wiele modziłem i kombinowałem , aż sięgam o pomoc na forum.. spacja jest i tak skrypt nie działa..

Tak mi sie zdaje ze błąd gdzieś występuje na poziomie edit.php - skrypt sie nie wykonuje - biała strona. Zanim przechodzi do wykonania skryptu czyli update.php

NIe wiem co z tym sad.gif
skowron-line
  1. <?php
  2. $num=mysql_numrows($result);
  3. ?>

abra kadabra
  1. <?php
  2. $num=mysql_num_rows($result);
  3. ?>


  1. <?php
  2. $query="UPDATE mecze SET data='$ud_data', przeciwnik='$ud_przeciwnik', krajpl='$ud_krajpl', krajue='$ud_krajue', typ='$ud_typ', mapy='$ud_mapy', my='$ud_my', oni='$ud_oni'WHERE id='$ud_id'";
  3. ?>


stringi powinny byc w "uszach" czyli "" ($ud_przeciwnik itd)


p.s to uzywaj mysql_error(); lub warunkow bedzie ci latwiej zobaczyc gdzie masz blad
k0b3
No i zmieniłem nauszniki i nic tongue.gif oraz zmienilem to mysql_num_rows

w pierwszym poście wspomniałem o kolidującym warunku przy skrypcie edit.php
  1. <?php
  2. $query=" SELECT * FROM mecze WHERE id='$id'";
  3. ?>


- gdy usune WHERE id='$id' skrypt działa, ale nic nie moge zmienić. Gdy wspisuje w pola swoje poprawki rekordu po akceptacji nie ma zmian.

czekam na dalsze propozycje...

//////////////////////////////////////////


Hm... sad.gif i nikt nie wie jak to zrobić? Nie widać błędu...questionmark.gif Czy ten skrypt z tej stony co podalem w pierwszym poscie to dziala??

Pozdrawiam... Help ME :]
KotDomowy
W skrypcie update.php zrob sobie echo $query; , a potem rezultat wklej np. do phpmyadmina. Jezeli jest jakis blad - to ci sie pokaze. Czasami nie widac np. braku spacji lub cudzyslowu/apostrofu
k0b3
Oj gdybym wiedział jak to zrobic.. ;/ wspomne jeszcze raz... jestem poczatkujacym, ktory juz wie co gdzie niekiedy, natomiast teraz nie mam pojecia o czym mowisz tongue.gif

Prosze o lopatologiczne wytlumaczenie smile.gif
acztery
a masz w ogole kolumne id :/
k0b3
Cytat(acztery @ 12.12.2006, 20:09:42 ) *
a masz w ogole kolumne id :/


oczywiscie... chociaz sprawdz, moze byc bląd:

tabela MYSQL
  1. "CREATE TABLE mecze (id int(6) NOT NULL auto_increment, data varchar(8) NOT NULL, przeciwnik
  2. varchar(30) NOT NULL, krajpl varchar(20) NOT NULL, krajue varchar(20) NOT NULL, typ varchar(20) NOT NULL,
  3. mapy varchar(20) NOT NULL, my varchar(4) NOT NULL, oni varchar(4) NOT NULL, PRIMARY KEY (id),UNIQUE id
  4. (id),KEY id_2 (id))";


//////////////////////////////
no dobra... zeby sie tak nie rozpisywac, bo myslalem ze jakoś moj problem nie jest zbyt trudny, wiec wrzucilem caly skrypt tutaj:
http://kobe.xt.pl/projekty/mecze/mecze.rar

moze tak bedzie latwiej smile.gif

/////////////// 13 grudnia

aj... i nikt nie jest wstanie mi pomoc... to troszkę ważne....
skowron-line
13 grudnia guitar.gif guitar.gif

i nie od dzis jest na forum wyszukiwarka wiec uzyj jej i napewno znajdziesz cos

http://forum.php.pl/index.php?showtopic=56838&hl=
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.