Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP] Prosty select.
cykcykacz
post
Post #1





Grupa: Zarejestrowani
Postów: 550
Pomógł: 9
Dołączył: 29.05.2009
Skąd: Ostrów Wielkopolski

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


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?
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Następuje automatyczna konwerska tekstu do liczby. Może poprostu zacznij wprowadzać poprawne dane, nie sądzisz?
Go to the top of the page
+Quote Post
cykcykacz
post
Post #3





Grupa: Zarejestrowani
Postów: 550
Pomógł: 9
Dołączył: 29.05.2009
Skąd: Ostrów Wielkopolski

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


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'


Ten post edytował cykcykacz 29.05.2013, 14:12:00
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




rzutuj na INTa....

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

i po sprawie
Go to the top of the page
+Quote Post
cykcykacz
post
Post #5





Grupa: Zarejestrowani
Postów: 550
Pomógł: 9
Dołączył: 29.05.2009
Skąd: Ostrów Wielkopolski

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


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';


Ten post edytował cykcykacz 29.05.2013, 14:26:07
Go to the top of the page
+Quote Post
_Borys_
post
Post #6





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


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.

Ten post edytował _Borys_ 29.05.2013, 15:04:07
Go to the top of the page
+Quote Post
mmmmmmm
post
Post #7





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

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


Kilka sposobów:
MD5(id)=MD5($wartosc)
Cast(id as Char)= '$wartosc'
Concat(id,'')='$wartosc'
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 - 19:38