Ocena wątku:
- 0 głosów - średnia: 0
- 1
- 2
- 3
- 4
- 5
usunięcie wyrazu z komórki tabeli
|
Liczba postów: 47
Liczba wątków: 13
Dołączył: 23-12-2011
Reputacja:
0
Witam
Natrafiłem na mur pisząc kalendarz z imprezami.
Założenia:
User może się zapisać na imprezę.
Kod PHP: $sql="UPDATE calendar SET event_who = '$who2, $who' WHERE event_d=$day AND event_m=$month AND event_y=$year";
$who2 - osoby już zapisane (np: Anna, Tomasz)
$who - obecny user (identyfikowany po sesji)
Zapis w bazie wygląda tak :
Kod: id | event_d | event_m | event_y | event | event_who
1 12 8 2013 urodziny ewa, ania, tomek, hubert
Problem:
Nie wiem jak usunąć usera (np. tomek) z danego wydarzenia pozostawiając resztę userów w spokoju.
Będę bardzo wdzięczny za pomoc.
Dziękuje z góry i pozdrawiam
Liczba postów: 62
Liczba wątków: 7
Dołączył: 28-02-2010
Reputacja:
1
Wydaje mi się, że rozsądnym rozwiązaniem jest pobrać userów,
Kod PHP: $sql = "SELECT event_who FROM calendar WHERE id=1"; ... $who = "ewa, ania, tomek, hubert"; ...
przefiltrować Kod PHP: ... $who = "ewa, ania, hubert";
i zrobić update,
Kod PHP: $sql = "UPDATE calendar SET even_who = $who WHERE id=1";
z tym, że operujesz tu na stringu.
Wydaje mi się, że Twój problem polega na tym, że prowadzisz zły zapis userów, poniewarz co jeśli zapisze się dwóch userów o imieniu Tomek? Nawet za pomocą "Regular Expression" bedziesz miał poroblem z usunięciem jednego z nich, no chyba, że chcesz się bawić w ręczny zapis imion użytkowników.
Zamiast imion zapisz ID usera, wtedy napiszesz sobie prosty skrypt, który pozwoli Tobie na usunięcie usera, ale równierz userowi pozwoli na wypisanie się z wydarzenia.
No chyba, że ktoś zna inne rozwiązanie to chętnie poczytam.
Pozdrawiam
Liczba postów: 47
Liczba wątków: 13
Dołączył: 23-12-2011
Reputacja:
0
19-08-2013, 02:50
(Ten post był ostatnio modyfikowany: 19-08-2013, 02:51 przez harvester2001.)
Cytat:Wydaje mi się, że Twój problem polega na tym, że prowadzisz zły zapis userów, poniewarz co jeśli zapisze się dwóch userów o imieniu Tomek? Nawet za pomocą "Regular Expression" bedziesz miał poroblem z usunięciem jednego z nich, no chyba, że chcesz się bawić w ręczny zapis imion użytkowników.
Zamiast imion zapisz ID usera, wtedy napiszesz sobie prosty skrypt, który pozwoli Tobie na usunięcie usera, ale równierz userowi pozwoli na wypisanie się z wydarzenia.
Tak właśnie myślałem, że już na samym początku strzeliłem sobie w kolano.
Mógłbyś mi tylko łopatologicznie podpowiedzieć jak przefiltrować informację jak już będę operował id userów, bo jestem lekko zielonkawy w te klocki.
Zakładając że teraz wszystko będzie wyglądało tak :[/quote]
Oczywiście bardzo dziękuję za pomoc
Liczba postów: 62
Liczba wątków: 7
Dołączył: 28-02-2010
Reputacja:
1
Hej,
najprościej to: Kod PHP: $who = "ania, tomek, marta, hubert";
$tablica = explode(", ", $who);
unset($tablica[1]);//numer odpowiadający pozycji w tablicy
$tablica2 = implode(", ", $tablica);
echo $tablica2;//ania, marta, hubert
I tak samo w przypadku User ID
Z tym, że najlepiej to chyba w jakiejś funkcji zamknąć np:
Kod PHP: function filtrowanie($who, $nr) { $tablica = explode(", ", $who); unset($tablica[$nr]); $tablica2 = implode(", ", $tablica); return $tablica2; }
Jedyny minus tej funkcji to taki, że musisz znać pozycję elementu w tablicy, tak więc trzeba by rozbudować tą funkcję o możliwość usuwania po podaniu id usera.
Liczba postów: 393
Liczba wątków: 0
Dołączył: 04-06-2010
Reputacja:
15
Np. id usera który się wypisuje z imprezy:
$id_user = '2, '
zapytanie do mysql:
Kod: UPDATE calendar SET even_who = REPLACE(even_who, $id_user, '') WHERE id=1
i tak mamy 1 zapytanie i bez wałkowania tablicy w php
Liczba postów: 47
Liczba wątków: 13
Dołączył: 23-12-2011
Reputacja:
0
Engine
Bardzo dziękuję za pomoc, jak zwykle działa świetnie
msx83
Dzięki wielkie, dzięki twoim sugestiom wpadłem na dobry pomysł
|
Podobne wątki… |
Wątek: |
Autor |
Odpowiedzi: |
Wyświetleń: |
Ostatni post |
|
[PHP][MySQL] - Wtawianie danych tekstowych do tabeli |
przemysuaw |
1 |
2,615 |
07-03-2013, 01:23
Ostatni post: Kartofelek
|
|
phpmyadmin i klucz tabeli |
wsp |
5 |
4,535 |
24-10-2012, 22:45
Ostatni post: Pedro84
|
|
[MySQL][PHP] Problem z pobieraniem informacji z tabeli |
cryptarithm |
3 |
3,397 |
29-05-2012, 12:40
Ostatni post: Marys
|
|
[SQL] Pobieranie wiadomości z tabeli |
carkar |
1 |
2,816 |
12-12-2011, 01:24
Ostatni post: R_Rafalsky
|
|
Przekazanie wyświetlonego wyniku do innej tabeli |
atrapa |
1 |
2,053 |
02-11-2011, 08:55
Ostatni post: Marys
|
Użytkownicy przeglądający ten wątek:
|
|
Sponsorzy i przyjaciele
|
|
|