Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Problem z literami
Forum PHP.pl > Forum > Przedszkole
Konop857
Witam
Mam własny skrypt na mailboxa ale to mało ważne.
Problem jest w tym że nie rozpoznaje on liter.
Np mój nick to ,,facet".
Gdy wyśle wiadomość do ,,facet" to dochodzi i mogę ją odczytać.
Gdy wyśle wiadomość do ,,Facet" (z dużej litery) to dochodzi wiadomość lecz skrypt pokazuje że nie mogę jej odczytać.
Co zrobić by rozmiar liter nie miał znaczenia?
Dodam że przy rejestracji jak mam użytkownika facet to nie mogę już dodać FaCeT bo owy już istnieje więc wszystko jest w porządku.

Proszę o pomoc!
Pozdrawiam
Kshyhoo
I my wróżki mamy to wywróżyć? Rozumiemy, że Twój kod, to jakaś tajemnica?
Konop857
  1. if($do == "read"){
  2. $id = $_GET['id'];
  3. if(!empty($id)){
  4. if($from == "me") {
  5. if(($SQL->getMailInfo($id, 'nadawca')) == "$_SESSION[login]"){
  6. echo "<center><b><img src='../../layouts/".$layout."/images/others/blok.bmp'/></br>
  7. Wysłałeś następującą wiadomość do ".$SQL->getMailInfo($id, 'odbiorca')."!</br>
  8. <img src='../../layouts/".$layout."/images/others/blok.bmp'/></br>
  9. <u>".$SQL->getMailInfo($id, 'tytul')."</u></br></br>".$SQL->getMailInfo($id, 'tresc')."</br></br>
  10. <img src='../../layouts/".$layout."/images/others/blok.bmp'/></br></br>
  11. <a href='?subtopic=mailbox&action=send&repn=".$SQL->getMailInfo($id, 'odbiorca')."&rept=".$SQL->getMailInfo($id, 'tytul')."'>
  12. Szybka Odpowiedź!</a>";
  13. } else echo "<center><b><font color='red'>Nie jesteś nadawcą!</font></b></center>";
  14. }
  15. if($from == "other") {
  16. if(($SQL->getMailInfo($id, 'odbiorca')) == "$_SESSION[login]"){
  17. echo "<center><b><img src='../../layouts/".$layout."/images/others/blok.bmp'/></br>
  18. Otrzymałeś następującą wiadomość od ".$SQL->getMailInfo($id, 'nadawca')."!</br>
  19. <img src='../../layouts/".$layout."/images/others/blok.bmp'/></br>
  20. <u>".$SQL->getMailInfo($id, 'tytul')."</u></br></br>".$SQL->getMailInfo($id, 'tresc')."</br></br>
  21. <img src='../../layouts/".$layout."/images/others/blok.bmp'/></br></br>
  22. <a href='?subtopic=mailbox&action=send&repn=".$SQL->getMailInfo($id, 'nadawca')."&rept=".$SQL->getMailInfo($id, 'tytul')."'>
  23. Szybka Odpowiedź!</a>";
  24. $SQL->query("UPDATE message SET stan = 'odebrana' WHERE mail_id = '$id'");
  25. } else echo "<center><b><font color='red'>Nie jesteś odbiorcą!</font></b></center>";
  26. }
  27. } else echo "<center><b><font color='red'>Wybierz wiadomość do przeczytania!</font></b></center>";
  28. }

  1. function getMailInfo($id, $what)
  2. {
  3. require('hahicz.php');
  4. $info = mysql_fetch_array(mysql_query("SELECT * FROM message WHERE `mail_id`='$id'"));
  5. return $info[$what];
  6. }


Nie sądziłem że kod jest wam potrzebny.

Pozdrawiam
Kshyhoo
Cytat(Konop857 @ 5.11.2011, 14:10:18 ) *
Nie sądziłem że kod jest wam potrzebny.

No wcale, wywróżymy sobie ze szklanej kuli ;p Podobnie jak zawartość pliku z require('hahicz.php');
Konop857
  1. <?php
  2. define('DB_HOST','localhost');
  3. define('DB_USER','root');
  4. define('DB_PASS','***');
  5. define('DB_DB','***');
  6. $connect = mysql_connect(DB_HOST, DB_USER, DB_PASS) or die('Nie udalo polaczyc sie z baza danych. '.mysql_error());
  7. mysql_select_db(DB_DB,$connect)
  8. ?>
Kshyhoo
Spróbuj użyć w zapytaniu BINARY:
  1. SELECT * FROM message WHERE BINARY `mail_id`='$id'

lub kolumna "message" musi mieć nadany atrybut BINARY wtedy będzie rozróżniać wielkość liter...
Konop857
Niestety nie działa.
Cytat
będzie rozróżniać wielkość liter...

Właśnie chodzi o to żeby nie rozpoznawało ;o
Chodzi mi to że jak ktoś ma login Mężczyzna to bez różnicy czy wpiszesz MęŻczyzna / Mężczyzna czy MĘŻCZYZNA to i tak do niego dojdzie.

Pozdrawiam
piotr.kazmierczak
Jeżeli chcesz by wyszukiwało bez uwzględnienia wielkości liter, to po prostu wstawiaj do tablicy jedynie wartości z małych liter i przy selecie rób:

  1. SELECT * FROM message WHERE `mail_id`=LOWER('$id')
Konop857
Cytat
to po prostu wstawiaj do tablicy jedynie wartości z małych liter

Niestety nie mogę wprowadzić tylko małych liter ponieważ użytkownicy mogą rejestrować konta z takimi nazwami jakie chcą.
Mogą być i duże i małe a mi chodzi o to żeby skrypt mailboxa ignorował rozmiar liter a brał pod uwage tylko samą nazwę.

Pozdrawiam
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.