Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Includowanie pliku z funkcjami
kayy
post 23.05.2010, 13:18:33
Post #1





Grupa: Zarejestrowani
Postów: 112
Pomógł: 1
Dołączył: 3.08.2008

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


Witam!
Co raz więcej przybywa mi w moim skrypcie funkcji, więc, żeby się nie pomieszać to utworzyłem sobie skrypt z funkcjami który na początku każdego skryptu includuje.

Jego zawartość jest taka:
  1. <?php
  2.  
  3. /*
  4. ******************FUNCTIONS*********************
  5. */
  6.  
  7.  
  8. function createPostString($aPostFields) {
  9. foreach ($aPostFields as $key => $value) {
  10. $aPostFields[$key] = urlencode($key) . '=' . urlencode($value);
  11. }
  12. return implode('&', $aPostFields);
  13. }
  14.  
  15.  
  16. function db_conn($baza) {
  17. $conn = mysql_connect("localhost", "mojabaza","mojpass");
  18. if(mysql_select_db($baza)) { $result = true; }
  19.  
  20. }
  21.  
  22. function db_close() {
  23.  
  24. mysql_close($conn);
  25. }
  26.  
  27. function curl_post($adrr) {
  28. $ch = curl_init($adrr);
  29. curl_setopt($ch, CURLOPT_POSTFIELDS, createPostString($postFields));
  30. curl_exec($ch);
  31. curl_close($ch);
  32. }
  33.  
  34. ?>


No i wywala kupe errorów:
Kod
Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in /home/...../myinc.php on line 23

Warning: Invalid argument supplied for foreach() in /home/.../myinc.php on line 9

Warning: implode() [function.implode]: Invalid arguments passed in /home/.../myinc.php on line 12


Wie ktoś może dlaczego?
Może i banalne pytanie, ale kto pyta nie błądzi; )




--------------------

Dziękuję wszystkim za pomoc w PHP :)
Go to the top of the page
+Quote Post
lobopol
post 23.05.2010, 13:28:00
Post #2





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

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


A pokaż jak to includujesz i jak używasz tych funkcji.


--------------------
Go to the top of the page
+Quote Post
kayy
post 23.05.2010, 13:37:43
Post #3





Grupa: Zarejestrowani
Postów: 112
Pomógł: 1
Dołączył: 3.08.2008

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


  1. <?php
  2. include('myinc.php');
  3. db_conn('baza_test');
  4.  
  5. $postFields['nick'] = $nick;
  6. $postFields['pass'] = $pass;
  7. curl_post('http://strona.pl/dfd.php');
  8.  
  9. db_close();
  10.  
  11. ?>

zauważyłem, że db_conn zdziała dobrze, bo pobiera dane z bazy, tylko db_close nie chodzi.

Ten post edytował kayy 23.05.2010, 13:47:20


--------------------

Dziękuję wszystkim za pomoc w PHP :)
Go to the top of the page
+Quote Post
lobopol
post 23.05.2010, 14:01:36
Post #4





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

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


Bo $conn jest zmienną funkcyjną, poza funkcją db_conn nie masz do niej dostępu. Powinieneś ją wywoływać $polaczenie = db_conn(blabla) i w db_conn powinieneś zwracać uchwyt do bazy.


--------------------
Go to the top of the page
+Quote Post
kayy
post 23.05.2010, 14:28:23
Post #5





Grupa: Zarejestrowani
Postów: 112
Pomógł: 1
Dołączył: 3.08.2008

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


Nie wiem czy dobrze zrozumiałem ale robię tak:

  1. function db_close($conn) {
  2.  
  3. mysql_close($conn);
  4. }
  5.  


a w kodzie:
  1.  
  2. $conn = db_conn(blabla);
  3.  
  4.  
  5. db_close($conn);

I to samo.


A co z funkcją createPostString ? Czemu ona nie działa? Przecież przekazuje jej parametr i ona powinna wyrzucac result.


--------------------

Dziękuję wszystkim za pomoc w PHP :)
Go to the top of the page
+Quote Post
lobopol
post 23.05.2010, 16:59:56
Post #6





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

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


te blabla było tylko przykładem
  1. function db_conn($baza) {
  2. $conn = mysql_connect("localhost", "mojabaza","mojpass");
  3. if(mysql_select_db($baza)) { $result = true; }
  4. else{die(); }
  5. return $conn;
  6. }
  7. //wywołanie
  8. $conn = db_conn($baza);
  9. db_close($conn);


Jak tą drugą funkcje wywołujesz i jakie zmienne jej dajesz?


--------------------
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: 12.06.2025 - 14:48