Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Usuwanie fragmentu zmiennej
gorden
post
Post #1





Grupa: Zarejestrowani
Postów: 486
Pomógł: 101
Dołączył: 27.06.2010

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


Witajcie... Chciałbym wykonać skrypt, który po spełnieniu odpowiednich warunków usuwałby fragment wartości zmiennej... Dajmy na to, że najpierw wyszukuje ten fragment, a później go kasuję. Użyłem funkcji strpos() do wyszukania fragmentu, teraz jak go usunąć?

  1. <?
  2. $wartosci = "wartosc1 wartosc2 wartosc3";
  3. $szukana = $_POST['wartosc'];
  4. $usuwanie = strpos($wartosci, $szukana);
  5.  
  6. if ($usuwanie === false) {
  7. echo "szukana wartosc nie istnieje, wiec nie zostanie skasowana"; } else {
  8. echo "szukana wartosc istnieje i zostanie skasowana";
  9. //Tutaj wlasnie chce skasowac to, co podane w przykladowym poscie , jesli istnieje
  10. }
  11. ?>


Czyli jeśli w powyższym kodzie, w poście ktoś wpisał "wartosc2", to zmienna $wartosci bedzie wygladala tak: "wartosc1 wartosc3". Jeśli wpisze natomiast "wartosc4", której nie ma w tej zmiennej, to ona zostanie nienaruszona. Jaka funkcja służy do tego?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
bastard13
post
Post #2





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


A może str_replace?
  1. $usuwanie = str_replace($szukana,'', $wartosci);


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





Grupa: Zarejestrowani
Postów: 486
Pomógł: 101
Dołączył: 27.06.2010

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


Hmm... w sumie można podmienić wartosc na drugą, pustą. Zrobiłem formularz, dopasowałem do zmiennych i wstawiłem str_replace(). Wszystko z warunkami jest ok, ale kiedy już wszystko pójdzie ok, nie usuwa tego fragmentu... Do tego ze str_replace użytym w takim celu wiążą się problemy: jeśli jest np $wartosci="wartosc32, wartosc33", a w formularzu zostanie wpisane tylko "wartosc", to zmienna $wartosci bedzie wyglądała tak: $wartosci="32, 33"... to nie jest rozwiązanie mojego problemu.
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: 22.08.2025 - 09:06