![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 271 Pomógł: 0 Dołączył: 20.08.2003 Skąd: Szczecinek Ostrzeżenie: (0%) ![]() ![]() |
Siemka mam kilka checkbox o nazwie usun[] taraz daje taki kodzik
[php:1:b8235fa313]<? if($action=="wykonaj"){ if ($act=="usun"){ $ids = join(' AND id=',$_POST['usun']); $query=mysql_query("DELETE FROM mecze_typer WHERE id='$ids'") or Die("Nie udało się!"); } } ?>[/php:1:b8235fa313] Teoretycznie powinno mi usunąć wszystkie wpisy.Ale usuwa tylko jeden chociaz zmienna $ids ma taką postać 20 AND id=21 AND id=22 AND id=23 czyli [php:1:b8235fa313]<? $query=mysql_query("DELETE FROM mecze_typer WHERE id=20 AND id 21 AND id=22 AND id=23") or Die("Nie udało się!"); ?>[/php:1:b8235fa313] ALE NIE DZIAŁA DLACZEGO ![]() -------------------- Warsztat: gPHPEdit | Linux 2.6.17-11-generic (Ubuntu)
Sprzęt: Noteook BenQ A33E ___________________________________________________ |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
jak dla mnie to pytanie wyglada inaczej:
... where id='10 and id=30' Daj printa to sam zobaczysz ze $ids masz w cudzyslowach,a stringa '10 and id=30' pewnie nie masz w bazie ![]() -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 271 Pomógł: 0 Dołączył: 20.08.2003 Skąd: Szczecinek Ostrzeżenie: (0%) ![]() ![]() |
No własnie nie ma w ' ' jest samo 20 AND ....
-------------------- Warsztat: gPHPEdit | Linux 2.6.17-11-generic (Ubuntu)
Sprzęt: Noteook BenQ A33E ___________________________________________________ |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Cytat No własnie nie ma w ' ' jest samo 20 AND ....
a mozna jasniej ![]() bo tobie chyba chodzilo o zapytanie Kod DELETE FROM mecze_typer WHERE id=$ids
pozatym zamiast AND chyba OR powinien byc -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 271 Pomógł: 0 Dołączył: 20.08.2003 Skąd: Szczecinek Ostrzeżenie: (0%) ![]() ![]() |
OR=albo
AND= i a ja chcem zeby usuneło id=22 i id=23 -------------------- Warsztat: gPHPEdit | Linux 2.6.17-11-generic (Ubuntu)
Sprzęt: Noteook BenQ A33E ___________________________________________________ |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Cytat OR=albo
AND= i a ja chcem zeby usuneło id=22 i id=23 OR=lub usun wiersze gdzie id ma wartosc 10 lub 20 lub 30 :wink: -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 680 Pomógł: 0 Dołączył: 1.10.2002 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
W tym wypadku musisz użyć AND...
Wykonaj zapytanie na surowo i sprawdź czy działa, czyli: [php:1:d13bd02d06]<?php $link = mysql_connect('...'); $query=mysql_query('DELETE FROM mecze_typer WHERE id=20 AND id=21 AND id=22 AND id=23', $link) or Die("Nie udało się!"); ?>[/php:1:d13bd02d06] PS. Sprawdź też czy masz rekordy o podanych ID. -------------------- "Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Cytat W tym wypadku musisz użyć AND
a czemu akurat trza AND? [sql:1:0a4148811d]DELETE FROM `uzytkownicy` WHERE id = 1 OR id = 10[/sql:1:0a4148811d] Cytat Skasowane rekordy: 2 (Wykonanie zapytania trwało 0.0226 sekund(y))
-------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Alternatywne rozwiazanie:
[sql:1:522b151f26]DELETE FROM tabela WHERE id IN (21,22,23);[/sql:1:522b151f26] |
|
|
![]()
Post
#10
|
|
![]() Vice-Administrator serwera Grupa: Przyjaciele php.pl Postów: 395 Pomógł: 0 Dołączył: 7.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Cytat W tym wypadku musisz użyć AND...
Przy czymś takim masz błąd logiczny ... usuń costam gdzie id=10 i id=20 przecież dla danego rekordu możesz mieć tylko jedną wartość id więc musi być zastosowane OR czyli LUB -------------------- |
|
|
![]()
Post
#11
|
|
![]() Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Cytat Cytat W tym wypadku musisz użyć AND...
Przy czymś takim masz błąd logiczny ... usuń costam gdzie id=10 i id=20 przecież dla danego rekordu możesz mieć tylko jedną wartość id więc musi być zastosowane OR czyli LUB ano wlasnie ![]() -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 680 Pomógł: 0 Dołączył: 1.10.2002 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Cytat Przy czymś takim masz błąd logiczny ... usuń costam gdzie id=10 i id=20
przecież dla danego rekordu możesz mieć tylko jedną wartość id więc musi być zastosowane OR czyli LUB Nic nie musi... może być. Cytat Siemka mam kilka checkbox o nazwie usun[] [...]
Rozumiem, że checkboxy są generowane na podstawie danych z bazy, więc nie będzie "błędu logicznego"... -------------------- "Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Cytat Rozumiem, że checkboxy są generowane na podstawie danych z bazy, więc nie będzie "błędu logicznego"...
hmm az sprawdzilem, AND poprostu nie dziala jesli dasz ...id=2 AND id=3 to poprostu nie skasuje zadnego (zamiast skasowac dwoch), natomiast OR dziala bez problemu i kasuje 2 rekordy pozatym co do tego ma generowanie checkboksow z bazy do wyrazenia logicznego?? -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 6.11.2003 Ostrzeżenie: (0%) ![]() ![]() |
nie mozeszz skasowac wielu rekordow naraz
musisz uzyc foreach ktora pojedzie po tablicy i skasuje po kolei [/b] |
|
|
![]()
Post
#15
|
|
![]() Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Cytat nie mozeszz skasowac wielu rekordow naraz
musisz uzyc foreach ktora pojedzie po tablicy i skasuje po kolei A to niby czemu ![]() -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.07.2025 - 15:55 |