Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]funkcje w mysqli
viamarimar
post 13.06.2016, 20:27:29
Post #1





Grupa: Zarejestrowani
Postów: 303
Pomógł: 1
Dołączył: 24.09.2011

Ostrzeżenie: (10%)
X----


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)

Ten post edytował viamarimar 13.06.2016, 20:28:30
Go to the top of the page
+Quote Post
trueblue
post 13.06.2016, 20:31:09
Post #2





Grupa: Zarejestrowani
Postów: 6 799
Pomógł: 1827
Dołączył: 11.03.2014

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


A połączenie jaką funkcją tworzyłeś?


--------------------
Go to the top of the page
+Quote Post
viamarimar
post 13.06.2016, 20:31:57
Post #3





Grupa: Zarejestrowani
Postów: 303
Pomógł: 1
Dołączył: 24.09.2011

Ostrzeżenie: (10%)
X----


bez funkcji poprostu include ...config.php
Go to the top of the page
+Quote Post
trueblue
post 13.06.2016, 20:36:12
Post #4





Grupa: Zarejestrowani
Postów: 6 799
Pomógł: 1827
Dołączył: 11.03.2014

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


Żeby to działało to $link musi być zmienną globalną, albo powinieneś przekazać ją jako dodatkowy argument do funkcji filtrujDane.


--------------------
Go to the top of the page
+Quote Post
viamarimar
post 13.06.2016, 20:41:31
Post #5





Grupa: Zarejestrowani
Postów: 303
Pomógł: 1
Dołączył: 24.09.2011

Ostrzeżenie: (10%)
X----


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..
Go to the top of the page
+Quote Post
trueblue
post 13.06.2016, 20:49:35
Post #6





Grupa: Zarejestrowani
Postów: 6 799
Pomógł: 1827
Dołączył: 11.03.2014

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


http://php.net/manual/en/language.variables.scope.php

lub:
  1. function filtrujDane(&$link, $zmienna){


--------------------
Go to the top of the page
+Quote Post
viking
post 13.06.2016, 21:12:07
Post #7





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


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.


--------------------
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 Wersja Lo-Fi Aktualny czas: 14.06.2025 - 11:12