Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z require
mlynar
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 19.09.2006

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


plik baza.php5
  1. <?php
  2. function baza()
  3. {
  4. @ $db = new mysqli('localhost', 'uzytkownik', 'haslo', 'baza');
  5. if (mysqli_connect_errno())
  6. {
  7.  echo 'Błąd: Połączenie z bazą danych nie powiodło się. Spróbuj jeszcze raz później.';
  8.  exit;
  9. }
  10. }
  11. ?>


plik dodaj.php5
  1. <?php
  2. $kat=$_POST['kat'];
  3.  
  4. require_once('baza.php5');
  5. baza();  
  6.  
  7.  
  8. $pytanie="insert into kategorie values ('".$kat."')"; 
  9. $wyniki = $db->query($pytanie);
  10. if ($wyniki)
  11. echo 'Kategoria dodana</br>'; 
  12.  
  13.  
  14.  
  15. ?>


plik baza.php5 to jak widac polaczenie z baza danych i wyswietlenie bledu jezeli polaczenie nie nastapi. Problem w tym ze jesli wywoluje go z funkcji to funkcja nie dzala, lecz jesli kod funkcji wkleje zamiast
  1. <?php
  2. require_once('baza.php5');
  3. baza();
  4. ?>
wszystko chodzi jak nalezy. Pytanie brzmi gdzie jest haczyk?

// zamiast [code] uzyj [php] -- dr_bonzo
Go to the top of the page
+Quote Post
batman
post
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Wydaje mi się (nie sprawdzałem u siebie), że zmienna $db jest dostępna tylko w ciele funkcji, a nie poza nią. Możesz zadeklarować zmienną $db przed funkcją i odwołać się do niej w funkcji za pomocą global lub zrobić takie coś:

  1. <?php
  2. function baza() {
  3. $db1 = new mysqli('localhost', 'uzytkownik', 'haslo', 'baza');
  4. if (mysqli_connect_errno()) {
  5.  echo 'Błąd: Połączenie z bazą danych nie powiodło się. Spróbuj jeszcze raz później.';
  6.  exit;
  7. }
  8. return $db1;
  9. }
  10.  
  11. $db = baza();
  12. ?>
Go to the top of the page
+Quote Post
piczu
post
Post #3





Grupa: Zarejestrowani
Postów: 182
Pomógł: 0
Dołączył: 4.01.2005
Skąd: piczu.info

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


zasieg zmiennych
variables.scope" title="Zobacz w manualu php" target="_manual
Go to the top of the page
+Quote Post
mlynar
post
Post #4





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 19.09.2006

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


Wielkie dzieki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) wszystko dziala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.12.2025 - 22:42