Kezdőoldal » Számítástechnika » Programozás » If összehasonlítás PHP-ban?

If összehasonlítás PHP-ban?

Figyelt kérdés

Előre leszögezném, hogy egyáltalán nem értek a PHP-hoz, de úgy alakult, hogy valamit meg kell csinálni benne. Szóval a problémám a következő:


Van egy ilyen lekérdezésem:


// Get appointments

$record_id = $this->db->escape($this->input->post('record_id'));


És szeretnék vele egy ilyen vizsgálatot csinálni:

if ($record_id == '36')

{

$where_clause = ....

}

else

{

$where_clause = ....

}


A konkrét probléma az, hogy mindig az else ágba lép valamiért, holott tudom, hogy aktuálisan a recor_id az adatbázisban 36-os értéket képvisel. Valamit gondolom rosszul hasonlítok össze, vagy a $record_id adatszerkezete nem olyan egyszerű, ahogy én elképzelem azt. Próbáltam kiíratni echo-val, de akkor csak egy ilyen hibát kapok vissza:

"A betöltés nem fejeződött be egy váratlan esemény miatt:"

'36'{"appointments":[],"unavailables":[]}


2021. máj. 10. 10:56
 1/10 anonim ***** válasza:

Na de hol a lekérdezés amúgy?


Ami a kódból látszik, hogy egy POST -ban küldött értéket vizsgálsz csak, semmi köze adatbázishoz a kódnak, szerintem túlságosan lecsonkítottad :)

2021. máj. 10. 11:01
Hasznos számodra ez a válasz?
 2/10 A kérdező kommentje:

A lekérdezést csak azért vettem ki, mert gondoltam nem lényeges a kérdés szempontjából és gyorsabb volt leírni. Egyébként ez:


$where_clause = $where_id . ' = ' . $record_id . '

AND ((start_datetime > ' . $start_date . ' AND start_datetime < ' . $end_date . ')

or (end_datetime > ' . $start_date . ' AND end_datetime < ' . $end_date . ')

or (start_datetime <= ' . $start_date . ' AND end_datetime >= ' . $end_date . '))

AND is_unavailable = 0';


Másik esetben pedig ugyanez, csak nincs benne a $where_id összehasonlítás az elején

2021. máj. 10. 11:04
 3/10 A kérdező kommentje:
Honnan tudnám ezt a POST adatot megnézni fa*ául, hogy 36-e vagy nem? :D (Úgy hogy tudom hogy 36)
2021. máj. 10. 11:07
 4/10 anonim ***** válasza:

Igen így valóban nem lényeges ha a lekérdezés csak utána van.


Ha el van pl űrlapból POSTolva a record_id 36 akkor belemegy az if részbe, ha nincs akkor nem.

2021. máj. 10. 11:08
Hasznos számodra ez a válasz?
 5/10 A kérdező kommentje:
ha ez backend php-s fájlban van, akkor bele tudok nézni ennek a változónak a tartalmába valahogyan?
2021. máj. 10. 11:18
 6/10 anonim ***** válasza:

Igen, pl így:


var_dump($_POST);

2021. máj. 10. 11:20
Hasznos számodra ez a válasz?
 7/10 anonim ***** válasza:

Nem azért de kipróbáltad aposztrófok nélkül is???


if ($record_id == '36')


if ($record_id == 36)

2021. máj. 10. 11:21
Hasznos számodra ez a válasz?
 8/10 A kérdező kommentje:
#7: első dolgom volt
2021. máj. 10. 11:23
 9/10 anonim ***** válasza:
#7 ezek ugyan azok, hisz típus nélküli a vizsgálat (két egyenlőségjel, nem három), nem lehet különbség a két feltételed között.
2021. máj. 10. 11:24
Hasznos számodra ez a válasz?
 10/10 A kérdező kommentje:

a var_dump($POST) dolog működött, ez van benne:


Array ( [record_id] => 36 [start_date] => 2021-05-09 [end_date] => 2021-05-16 [filter_type] => provider ) {"appointments":[],"unavailables":[]}

2021. máj. 10. 11:25

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!