Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] warunek IF, porównanie dwóch zmiennych typu string.
Forum PHP.pl > Forum > PHP
husky999
Witam,

mam dwie zmienne:

  1. $zmienna1 = $_POST['nazwa'];
  2. $zmienna2 = 'nazwa';
zmienna 1 to wartość przekazywana z formularza, a zmienna2 to osobna zmienna utworzona do porównania.

Kiedy buduję warunek if i staram się sprawdzić czy pasują do siebie (=) to powstaje problem, ponieważ warunek zawsze jest spełniony niezależnie od pola jakie jest przekazywane w POST.

Z pewnością dzieje się tak, dlatego bo nie stosuje specjalnej funkcji do porównywania stringów.

Bardzo proszę o pomoc w skonstruowaniu warunku który zaradzi z tym problemem z wykorzystaniem odpowiedniego narzędzia.

czytałem że pomocne może byc
ale mam problem.
!*!
Podstawy się kłaniają. Sprawdzaj == a nie przypisuj =
http://phpkurs.pl/operatory/#operatory.porownania
Szymciosek
  1. if ($str1 === $str2)
  2. {
  3. //instrukcje
  4. }


lub

  1. if ($str1 == $str2)
  2. {
  3. //instrukcje
  4. }



Pierwszy wskazuje na identyczność, wartość i typ, a drugi sprawdza tylko czy wartość wskazuje to samo.

Mówisz, że dałeś "=" a to jest przypisanie.
husky999
  1. if($name === $sprawy){
  2. ... }
  3. else ...


porównanie zmiennej i typu, to też robiłem, ale nie działa.

W poprzednim formiewartoscią w polu select jest zmienna string 'costam'.

Przekazuje ją potem i po wywołaniu warunku przyrównującej zmienną z select do innej tego samego typu nie daje żadnego efektu. warunek ciągle jest prawdzywy. dopiero jak wstawie tam liczby to wszystko chodzi. gdy próbuję ze string nie d się, a bardzo zalezy mi na tym, bo potem łatwiej będzie mi wybrać bazę danych z tej własnie postowanej zmiennej.

PS. nie pisałbym postu gdybym nie sprawdził wcześniej wszystkich możliwości, albo gdybym nie wpadł ze mogę też użyć == lub === pewnie nie znalazł bym tego forum;p
!*!
Pokaż kod w całości.
husky999
Problem rozwiązany. Miałem za bardzo rozwiniętą instrukcję warunkową. Do zamknięcia:) Dzięki za pomoc.
Dejmien_85
Dla potomnych: najprostszym sposobem jest zawsze sprawdzenie co idzie do warunku (czyli wyświetlenie zmiennych za pomocą choćby "echo" tuż przed umieszczeniem ich w warunku) - wtedy masz pewność, czy problem leży w zmiennych, czy w kodzie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.