Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP] Edycja rekordu
--Pablosz--
post
Post #1





Goście







Witam!

Próbuję edytować rekord w bazie danych, oto fragment kodu:

  1. if($id==4) /*Modyfikowanie*/
  2. {
  3. if($mid) /* ID rekordu do modyfikacji */
  4. {
  5. $sql=mysql_connect("localhost","root","krasnal") or
  6. die ("Nie można się połączyć z MySQL");
  7. mysql_select_db ("projekt") or /*Baza danych z nazwami tabel poszczególnych projektów*/
  8. die ("Nie można się połączyć z bazą danych");
  9.  
  10. $dane=mysql_query("SELECT * FROM projekty;") or
  11. die ("Błąd zaytania");
  12.  
  13. while($rekord=mysql_fetch_array($dane))
  14. {
  15. if($pid==$rekord[0]) { $nazwa=$rekord[2]; break; } /* Przesyłam zmienną pid, która jest id tabeli, której nazwy szukam */
  16. }
  17. if($uprawnienia>1) /*Jeżeli jestem uprawniony, do dalej */
  18. {
  19. print(" $nazwa $tytul $opis $link $autor $data $typ $mid $pid"); /*Tutaj testowo wypisuje sobie wszystkie zmienne
  20.   mysql_query("UPDATE '$nazwa' SET tytul='$tytul', opis='$opis', link='$link', autor='$autor', data='$data', typ='$typ' WHERE id='$mid';");
  21.   }
  22.   else print("Nie masz uprawnień do wykonania tej operacji.");
  23.  
  24.   mysql_close($sql);
  25.   }
  26. }


Więc po krótce. Mam tabelę projektów projekty, a w niej nazwy tabel dotyczących poszczególnych projektów. Skrypt dostaje pid (id projektu, stąd mam nazwę tabeli), mid (id wpisu do edycji), oraz wszystkie pola (z formularzy). Jak wypisuję te zmienne, wszystko jest idealnie - mam nazwę tabeli, mam odpowiednie ID. Ale jednak nniestety nic się w bazie nie zmienia.

Prosze o pomoc, już prawie cały projekt mi trybi, a z tym nie mogę sobie poradzić ;/ Może potrzeba jakiś dodatkowych informacji? Chętnie przedstawię.

Pozdrawiam
Go to the top of the page
+Quote Post
motyl-pl
post
Post #2





Grupa: Zarejestrowani
Postów: 294
Pomógł: 31
Dołączył: 2.04.2010

Ostrzeżenie: (0%)
-----


Strukture bazy daj.


--------------------
Go to the top of the page
+Quote Post
viking
post
Post #3





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Strzelam. ID będzie integerem, błąd mapowania danych na stringa.


--------------------
Go to the top of the page
+Quote Post
--Pablosz--
post
Post #4





Goście







Tabela projektu:

id int(11)
tytul text text
opis text
link text
autor text
data datetime
typ int(11)

Tabela nazw projektów:
id int(11)
nazwa text
nazwa_bazy text
uprawnienia int(11)
data datetime
Go to the top of the page
+Quote Post
b4rt3kk
post
Post #5





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Zamknij komentarz. Chyba, że dodany tylko na forum.

  1. mysql_query("UPDATE `$nazwa` SET tytul='$tytul', opis='$opis', link='$link', autor='$autor', data='$data', typ='$typ' WHERE id='$mid';");


Nazwa tabeli powinna być pomiędzy `, a nie zwykłymi apostrofami.


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
-Gość-
post
Post #6





Goście







Super! Dzięki wielkie! smile.gif Komenty dodawałem tylko na forum, nie mogę edytować niestety.

Jeszcze raz dziękuję za pomoc i pozdrawiam!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 05:04