Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Prosty select.
Forum PHP.pl > Forum > Przedszkole
cykcykacz
Witam,
nie wiem dlaczego ale znajduje mi poprawny rekord dla zapytania:

  1. SELECT * FROM wp_ogloszenia WHERE id = '04';


Znajduje id = 4;

A jak wprowadzę

  1. SELECT * FROM wp_ogloszenia WHERE id = "04/23/2013";



Też znajduje id = 4;

Jak zrobić żeby znajdowało poprawnie czyli dla oby dwóch zapytań nie powinno znaleść id=4?
nospor
Następuje automatyczna konwerska tekstu do liczby. Może poprostu zacznij wprowadzać poprawne dane, nie sądzisz?
cykcykacz
To co mam zrobić?
Proszę o radę.
Wiadomo dane wprowadzam formularzem metodą Get.
PHPem przerobić string, żeby ucinał pierwsze zera?

Czy jak?

Czy może tak:
  1. SELECT * FROM wp_ogloszenia WHERE id LIKE '04/25/2013'
nospor
rzutuj na INTa....

$id = (int)$_GET['id'];
$sql= 'select blablab where ID='.$id;

i po sprawie
cykcykacz
Kurcze tylko nie przedstawiłem tak do końca o co mi dokładnie chodzi!

Mam jeden formularz i z tego formularza mam zrobić selecta, który przeszuka tabelkę i sprawdzać to dla kolumny id lub date.


Czyli mam jedną zmienną jeżeli wprowadzę do formularza 04 to po parasowaniu:
  1. $value = (int)$_GET['id'];

Dostaje 04 a jak wprowadzę 04/18/2013 też dostaję 4...

Nie mniej ja zrobiłem w ten sposób.

$value

  1. SELECT * FROM wp_ogloszenia WHERE id LIKE '$value' OR date LIKE '$value';
_Borys_
Tak czy owak dane z formularza powinno się walidować przed zapytaniem do bazy, np. przy pomocy wyrażeń regularnych można sprawdzić czy dane są takie jakich oczekujesz, jeśli pierwsze zero oraz znaki różne od 0-9 to wtedy nie przejdzie.
mmmmmmm
Kilka sposobów:
MD5(id)=MD5($wartosc)
Cast(id as Char)= '$wartosc'
Concat(id,'')='$wartosc'
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.