Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]funkcje w mysqli
Forum PHP.pl > Forum > Przedszkole
viamarimar
Mam pewnie prosty problem do rozwiazania ale zastopowal mnie w pracy:
Do rzeczy, mam funkcje w mysql, chce zamienic ja na mysqli
  1. function filtrujDane($zmienna){
  2. $zmienna = mysql_real_escape_string(trim($zmienna));
  3. return $zmienna;
  4. }


Wiem ze skladnia funkcji w mysqli wyglada nastepujaco:

  1. string mysqli_real_escape_string ( mysqli $link , string $escapestr )


Jednakze:
-funkcja znajduje sie w pliku funkcje.php

Zmienilem funkcje na :

  1. function filtrujDane($zmienna){
  2. $zmienna = mysqli_real_escape_string($link,trim($zmienna));
  3. return $zmienna;
  4. }


Gdyz $link to moje polaczenie z baza, jednak funkcja dalej nie dziala.( Nie wykonuje sie logowanie, rejestracja itp itd wszedzie tam gdzie jest filtrowanie..)

Czy w tej funkcji jest cos nie tak?
- do pliku funkcje includowalem configa (czyli polaczenie)
trueblue
A połączenie jaką funkcją tworzyłeś?
viamarimar
bez funkcji poprostu include ...config.php
trueblue
Żeby to działało to $link musi być zmienną globalną, albo powinieneś przekazać ją jako dodatkowy argument do funkcji filtrujDane.
viamarimar
No to jeśli w funkcje includjue configa czyli polaczenie cos na zasadzie:

  1. $link = mysqli_connect($db, $db_user, $db_pass);


to chyba jest to dostepne w calym obszarze pliku funkcje.php

w przeciwnym razie prosil bym o jakis przyklad, alb jakas wieksza podpowiedz..
trueblue
http://php.net/manual/en/language.variables.scope.php

lub:
  1. function filtrujDane(&$link, $zmienna){
viking
A najlepiej jak dasz sobie spokój z funkcjami które nic nie robią. Zrób to porządnie z bindowaniem parametrów i bez trim które może nie mieć sensu dla wszystkich zmiennych.
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.