Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wysłanie podwójnego zapytania do SLQ?
Tomekop
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 17.01.2016

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


Witam, mam problem z działaniem kodu. Mianowicie chodzi o to że drugie MYSQL_QUERY w funkcji usuwania nie bardzo się wykonuje. Prześledziłem kod parę razy i nie widzę błędów. Czy możecie mi pomóc? Wytknąć błędy itd (IMG:style_emoticons/default/smile.gif)

  1. function refresh(){
  2. header("LOCATION: index.php?m01=lib/areas.php");
  3. }
  4. function selectedareaaction(){
  5. $action = "";
  6. if (!empty($_GET['a'])){
  7. $action = $_GET["a"];
  8. $id=$_GET['id'];
  9. $name=$_GET['n'];
  10. if($_GET['a']=="del"){
  11. $timeglobal=date("H:i");
  12. $dateglobal=date("m.d.y");
  13. $infoa="Województwo o nazwie: {$name}(ID:{$id}) zostało usunięte przez administratora #id. ['".$dateglobal.":".$timeglobal."']";
  14. mysql_query("DELETE FROM `dm_true`.`areas` WHERE `areas`.`id` = {$_GET['id']}");
  15. mysql_query("INSERT INTO `dm_true`.`notifications` (`id`, `DATE`, `NOTE`, `BLANK`) VALUES ('NULL', '{$dateglobal}-{$timeglobal}', '{$infoa}', '1')");
  16. refresh();
  17. }
  18. }
  19.  
  20. }
  21.  
  22. function addnewarea($area){
  23. $timeglobal=date("H:i");
  24. $dateglobal=date("m.d.y");
  25. $infob="Województwo o nazwie: {$area} zostało dodane przez administratora #id.";
  26. mysql_query("INSERT INTO `dm_true`.`areas` (`ID`, `NAME`) VALUES (NULL, '".$area."');");
  27. mysql_query("INSERT INTO `dm_true`.`notifications` (`id`, `DATE`, `NOTE`, `BLANK`) VALUES ('NULL', '{$dateglobal}-{$timeglobal}', '{$infob}', '1')");
  28. refresh();
  29.  
  30. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




nie 'null'
a null

A na przyszlosc wyswietlaj bledy php i bazy danych
Temat: Jak poprawnie zadac pytanie oraz przygotowac srodowisko pracy
Go to the top of the page
+Quote Post
Tomekop
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 17.01.2016

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


Przyznaje się - w moim kodzie brakuje ładu i porządku (IMG:style_emoticons/default/smile.gif) - możesz mi wytłumaczyć dlaczego null a nie 'null'? W wielu gotowych kodach / poradnikach spotkałem się z tym że wszyscy używali 'null'. A co do mojego problemu to w drugiej funkcji (czyli dodawanie rekoru) wszystko działa jak należy - te funkcje nie różnią się wiele od siebie, a jednak jest ten mały problem :/ Zaraz postaram się naprawić co zepsułem i dam znać jak poszło i gdzie był błąd.
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




'null' - to tekst. rownie dobrz moze tam byc 'ala ma kota'
null - to pusta wartosc
Go to the top of the page
+Quote Post
Tomekop
post
Post #5





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 17.01.2016

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


Dziękuje za szybkie i proste wyjaśnienie (IMG:style_emoticons/default/smile.gif) Wracając do swojego kodu - dziękuje ci zbawco za ten prosty acz zaj***iście przydatny (napisany przez Ciebie) poradnik (nazwał bym go bardziej kopem w tyłek dla tych co robią bajzel w kodzie).

Znalazłem błąd i usunąłem go. Powodem mojej udręki były ' ' nie potrzebnie osadzone przed zmienną (cały string był w cudzysłowach podwójnych)

Więc nie tak:
  1. $infoa="Województwo o nazwie: {$name}(ID:{$id}) zostało usunięte przez administratora #id. ['".$dateglobal.":".$timeglobal."']";


A tak:
  1. $infoa="Województwo o nazwie: {$name}(ID:{$id}) zostało usunięte przez administratora #id. [".$dateglobal.":".$timeglobal."]";



Dziękuję ci bardzo za szybką i efektywną pomoc - a twój poradnik dużo wniesie do mojego programowania (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




A, nie zwrocilem uwagi ze ty to wkladasz do bazy ten tekst...

Teksty jak sie wklada do bazy, nalezy je escapowac, wowczas wkladasz bez problemu wszystko.
W twoim przypadku powinienes byl uzyc mysql_real_escape_string() - patrz manual php


WAZNE!!!
Skoro dopiero zaczynasz przygode z php i mysql, to przestan uzywac funkcji mysql_ .One sa juz przestarzale!!!!!
Albo uzywaj mysqli_ albo najlepiej PDO
Go to the top of the page
+Quote Post
Tomekop
post
Post #7





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 17.01.2016

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


Nie zaczynam - dopiero wróciłem po na prawdę długiej przerwie. Muszę ponownie się wgryźć. I uwaga teraz najlepsze - właśnie sobie uświadomiłem że nie potrzebowałem tych zmiennych w stringu w ogóle bo datę i godzinę zapisuje w osobny rekord w bazie (IMG:style_emoticons/default/tongue.gif) Mimo wszystko dzięki bo założenie tego tematu usprawni moje pisanie w przyszłości.

Mam jeszcze jedno pytanie do Ciebie.

Mam taki kod
  1. function showmeareas(){
  2. $zapytanie1 = mysql_query("SELECT * FROM users");
  3. if(mysql_num_rows($zapytanie1) > 0) {
  4. while($r = mysql_fetch_array($zapytanie1)) {
  5.  
  6. echo "Grupa: {$r[1]}";
  7. /*Inne wartości pobrane z bazy*/
  8. }
  9. }
  10. }


I teraz - $r[1] - wyświetla ID grup do których należy użytkownik (np. 1,5,9). Kod który podałem pokaże mi ID zapisanych grup - a jak wyświetlić nazwy tych grup które zapisane są w innej tabeli?

Myślałem na kolejnym while'm ale czuje że to może się źle skończyć :/

Nie zaczynam - dopiero wróciłem po na prawdę długiej przerwie. Muszę ponownie się wgryźć. I uwaga teraz najlepsze - właśnie sobie uświadomiłem że nie potrzebowałem tych zmiennych w stringu w ogóle bo datę i godzinę zapisuje w osobny rekord w bazie (IMG:style_emoticons/default/tongue.gif) Mimo wszystko dzięki bo założenie tego tematu usprawni moje pisanie w przyszłości.

Mam jeszcze jedno pytanie do Ciebie.

Mam taki kod
  1. function showmeareas(){
  2. $zapytanie1 = mysql_query("SELECT * FROM users");
  3. if(mysql_num_rows($zapytanie1) > 0) {
  4. while($r = mysql_fetch_array($zapytanie1)) {
  5.  
  6. echo "Grupa: {$r[1]}";
  7. /*Inne wartości pobrane z bazy*/
  8. }
  9. }
  10. }


I teraz - $r[1] - wyświetla ID grup do których należy użytkownik (np. 1,5,9). Kod który podałem pokaże mi ID zapisanych grup - a jak wyświetlić nazwy tych grup które zapisane są w innej tabeli?

Myślałem na kolejnym while'm ale czuje że to może się źle skończyć :/
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




To ze nie zaczynasz a wracasz po przerwie, nie czyni mojego poprzedniego posta nieaktualnym.... Nadal jest jak najbardziej aktualny. Gdy juz sie do niego zastosujesz, to wtedy pogadamy (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
viking
post
Post #9





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

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


Połącz JOINem z tamtą drugą tabelą na podstawie id grupy.
Mimo wszystko jeśli ten kod nie jest jeszcze zbyt zaawansowany przejdź na PDO.
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@viking a niby jak ma polaczyc JOINem jak on te wszystkie ID trzyma w jednym polu po przecinku. To trzeba wpierw przeorganizowac strukture tabel
Go to the top of the page
+Quote Post
Tomekop
post
Post #11





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 17.01.2016

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


Cytat(nospor @ 17.01.2016, 13:54:01 ) *
To ze nie zaczynasz a wracasz po przerwie, nie czyni mojego poprzedniego posta nieaktualnym.... Nadal jest jak najbardziej aktualny. Gdy juz sie do niego zastosujesz, to wtedy pogadamy (IMG:style_emoticons/default/tongue.gif)


Nie miałem na myśli tego że czyni go nieaktualnym - wręcz przeciwnie jest bardzo pomocny - bo wiem od czego muszę zacząć (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 23:49