Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] i [mysql] łączenie się za pomocą mysqli
Lejto
post
Post #1





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

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


Mam php 5 i mysql 5 i ne działa mi połączenie przez mysqli

  1. <?php
  2. $mysqli = new mysqli("localhost", "my_user", "my_password", "world");
  3. ?>


Może trzeba ustawić coś w mysql? Pomurzcie


--------------------
Go to the top of the page
+Quote Post
mild
post
Post #2





Grupa: Zarejestrowani
Postów: 78
Pomógł: 0
Dołączył: 22.04.2007
Skąd: Wrocław

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


Cytat("php.net")
By zainstalować rozszerzenie mysqli dla PHP należy użyć opcji konfiguracyjnej --with-mysqli=mysql_config_path/mysql_config, gdzie mysql_config_path wskazuje na ścieżkę dostępu do programu mysql_config, który występuje w wersjach MySQL powyżej 4.1.

Jeśli chcesz zainstalować rozszerzenie mysql razem z rozszerzeniem mysqli musisz użyć tej samej biblioteki klienckiej w celu uniknięcia konfliktów.

Masz tak zrobione?
Go to the top of the page
+Quote Post
Lejto
post
Post #3





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

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


nie a gdzie to trzeba wpisać?


--------------------
Go to the top of the page
+Quote Post
mild
post
Post #4





Grupa: Zarejestrowani
Postów: 78
Pomógł: 0
Dołączył: 22.04.2007
Skąd: Wrocław

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


Przy instalacji oprogramowania na serwerze. Jest jakis powod dla ktorego koniecznie potrzebujesz mysqli?
Go to the top of the page
+Quote Post
mpps
post
Post #5





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

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


a - podstawowe pytanie - na jakim systemie działa Ci serwer i baza?
jeśli na windzie, to może pomoże wrzucenie biblioteki libmysqli.dll do C:\WINDOWS\system32\

a poza tym napisz, czy się pojawia jakaś informacja, i jeśli tak, to jaka?
wtedy będzie wiadomo, czego Ci brakuje biggrin.gif

Ten post edytował mpps 15.06.2007, 20:30:03


--------------------
www.mpps.pl
park maszynowy: apache 2.2.22 | php 5.4.0 | MySQL 5.0.10 | phpMyAdmin 3.5.0 | notepad ++ | pilsner urquell
Go to the top of the page
+Quote Post
Lejto
post
Post #6





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

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


powiec mi tylko gdzie wpisać
  1. <?php
  2. --with-mysqli=mysql_config_path/mysql_config, gdzie mysql_config_path
  3. ?>


serwer mam apache

Ten post edytował Lejto 26.06.2007, 16:05:29


--------------------
Go to the top of the page
+Quote Post
KCG
post
Post #7





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

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


U mnie pomogło tylko dopisanie extension=php_mysqli.dll w php.ini


--------------------
9242594 - zaczynasz? jak mogę, to pomogę :D /podstawowa znajomość php :P /
"to pomoc zawsze będzie gestem pięknym, zaliczana do tych teraz rzadko spotykanych..."
Go to the top of the page
+Quote Post
Lejto
post
Post #8





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

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


nic z tego nie działa a konktetnie chodzi mi o ten przykład:

plik głosoj.html
  1. <title>Ankieta</title>
  2. </head>
  3. <h1>Dodaj swój głos</h1>
  4. <p>Na kogo będziesz głosować w wyborach?</p>
  5. <form method=post action="pokaz_wyniki.php">
  6. <input type="radio" name="glos" value="Jan Kowalski">Jan Kowalski<br />
  7. <input type="radio" name="glos" value="Maria Nowak">Maria Nowak<br />
  8. <input type="radio" name="glos" value="Piotr Ziolkowski">Piotr Ziółkowski<br /><br />
  9. <input type="submit" value="Pokaż wyniki">
  10. </form>
  11. </body>
  12. </html>


plik pokaz wynik.php

  1. <?php
  2. /*********************************************
  3.   Zapytanie bazy danych odczytujące wynik ankiety
  4. *********************************************/
  5.  
  6. // pobranie głosu z formy
  7. $glos=$_REQUEST['glos'];
  8.  
  9. // zalogowanie w bazie danych
  10. if(!$bd_polacz=new mysqli('localhost', 'ankieta', 'ankieta', 'ankieta'))
  11. {
  12. echo 'Połączenie z bazą danych nieudane<br />';
  13. };
  14.  
  15. if(!empty($glos)) // jeżeli formularz został wypełniony, dodanie głosu
  16. {
  17. $glos=addslashes($glos);
  18. $zapytanie="update wyniki_ankiety
  19. set ilosc_glosow = ilosc_glosow + 1
  20. where kandydat = '$glos'";
  21. if(!($wynik=@$bd_polacz->query($zapytanie)))
  22. {
  23. echo 'Połączenie z bazą danych nieudane<br />';
  24. }
  25. };
  26.  
  27. // pobranie aktualnych wyników ankiety, niezależnie od faktu głosowania
  28. $zapytanie='select * from wyniki_ankiety';
  29. if(!($wynik=@$bd_polacz->query($zapytanie)))
  30. {
  31. echo 'Połączenie z bazą danych nieudane<br />';
  32. };
  33. $ilosc_kandydatow=$wynik->num_rows;
  34.  
  35. // obliczenie całkowitej liczby głosów
  36. $ilosc_glosow=0;
  37. while ($rzad=$wynik->fetch_object())
  38. {
  39. $ilosc_glosow+=$rzad->ilosc_glosow;
  40. }
  41. $wynik->data_seek(0); // wyzerowanie wskaźnika wyniku
  42.  
  43. /*********************************************
  44.   Początkowe obliczenia wykresu
  45. *********************************************/
  46. // ustawienie stałych
  47. putenv('GDFONTPATH=C:WINDOWSFonts');
  48. $szerokosc=500;  //szerokosc obrazka w pikselach - ta zmieści się w rozdzielczości 640x480
  49. $lewy_margines=50; // miejsce pozostawiane po lewej stronie obrazka
  50. $prawy_margines=50; // to samo dla strony prawej
  51. $wysokosc_slupka=40;
  52. $odleglosc_slupkow=$wysokosc_slupka/2;
  53. $czcionka='arial';
  54. $rozmiar_tytulu=16; // w stopniach
  55. $rozmiar_podstawowy=12; // w stopniach
  56. $rozmiar_maly=12; // w stopniach
  57. $wciecie_tekstu=10; //odległość lewych etykiet tekstowych od lewej krawędzi obrazka
  58.  
  59. // ustawienie początkowego punktu rysowania
  60. $x=$lewy_margines+70; //miejsce narysowania bazy wykresu
  61. $y=50; //to samo
  62. $jednostka_slupka=($szerokosc-($x+$prawy_margines))/100; //jeden "stopień" wykresu
  63.  
  64. // obliczenie wysokości wykresu - słupki plus przerwy plus pewien margines
  65. $wysokosc=$ilosc_kandydatow*($wysokosc_slupka+$odleglosc_slupkow)+50;
  66.  
  67. /*********************************************
  68.   Konfiguracja podstawowego obrazka
  69. *********************************************/
  70. // stworzenie pustego kadru
  71. $ob=imagecreateTrueColor($szerokosc, $wysokosc);
  72.  
  73. // Przydzielenie kolorów
  74. $bialy=ImageColorAllocate($ob,255,255,255);
  75. $niebieski=ImageColorAllocate($ob,0,64,128);
  76. $czarny=ImageColorAllocate($ob,0,0,0);
  77. $rozowy=ImageColorAllocate($ob,255,78,243);
  78.  
  79. $kolor_tekstu=$czarny;
  80. $kolor_procentow=$czarny;
  81. $kolor_tla=$bialy;
  82. $kolor_linii=$czarny;
  83. $kolor_slupka=$niebieski;
  84. $kolor_liczb=$rozowy;
  85.  
  86. // stworzenie "kadru" do rysowania
  87. ImageFilledRectangle($ob,0,0,$szerokosc-1,$wysokosc-1,$kolor_tla);
  88.  
  89. // narysowanie konturów wokół kadru
  90. ImageRectangle($ob,0,0,$szerokosc-1,$wysokosc-1,$kolor_linii);
  91.  
  92. // dodanie tytułu
  93. $tytul='Wyniki ankiety';
  94. $wymiary_tytulu=ImageTTFBBox($rozmiar_tytulu, 0, $czcionka, $tytul);
  95. $dlugosc_tytulu=$wymiary_tytulu[2]-$wymiary_tytulu[0];
  96. $wysokosc_tytulu=abs($wymiary_tytulu[7]-$wymiary_tytulu[1]);
  97. $tytul_nad_linia=abs($wymiary_tytulu[7]);
  98. $tytul_x=($szerokosc-$dlugosc_tytulu)/2; // wyśrodkowanie w x
  99. $tytul_y=($y-$wysokosc_tytulu)/2+$tytul_nad_linia; // wyśrodkowanie w y
  100. ImageTTFText($ob, $rozmiar_tytulu, 0, $tytul_x, $tytul_y,
  101.  $kolor_tekstu, $czcionka, $tytul);
  102.  
  103. // narysowanie bazy od nieco ponad pozycją pierwszego słupka do nieco 
  104. // poniżej pozycji ostatniego
  105. ImageLine($ob, $x, $y-5, $x, $wysokosc-15, $kolor_linii);
  106.  
  107. /*********************************************
  108.   Umieszczenie danych na wykresie
  109. *********************************************/
  110. // Pobranie każdej linii bazy danych i narysowanie odpowiadających słupków
  111. while ($rzad=$wynik->fetch_object())
  112. {
  113. if($ilosc_glosow>0)
  114. $procent=intval(round(($rzad->ilosc_glosow/$ilosc_glosow)*100));
  115. else
  116. $procent=0;
  117.  
  118. // wyświetlenie procentów dla tej wartości
  119. $wymiary_procentow=ImageTTFBbox($rozmiar_podstawowy, 0, $czcionka, $procent.'%');
  120. $dlugosc_procentow=$wymiary_procentow[2]-$wymiaryprocentow[0];
  121. ImageTTFText($ob,$rozmiar_podstawowy, 0, $szerokosc-$dlugosc_procentow-$wciecie_tekstu,
  122.  $y+($wysokosc_slupka/2), $kolor_procentow, $czcionka, $procent.'%');
  123.  
  124. // długość słupka dla tej wartości
  125. $dlugosc_slupka=$x+($procent*$jednostka_slupka);
  126.  
  127. // narysowanie słupka dla tej wartości
  128. ImageFilledRectangle($ob, $x, $y-2, $dlugosc_slupka, $y+$wysokosc_slupka, 
  129.  $kolor_slupka);
  130.  
  131. // narysowanie tytułu dla tej wartości
  132. ImageTTFText($ob, $rozmiar_podstawowy, 0, $wciecie_tekstu,  
  133.  $y+($wysokosc_slupka/2), $kolor_tekstu, $czcionka, 
  134.  "$rzad->kandydat");
  135.  
  136. // narysowanie konturu pokazującego 100%
  137. ImageRectangle($ob, $dlugosc_slupka+1, $y-2, ($x+(100*$jednostka_slupka)),
  138.  $y+$wysokosc_slupka, $kolor_linii);
  139.  
  140. // wyświetlenie liczb
  141. ImageTTFText($ob, $rozmiar_maly, 0, $x+(100*$jednostka_slupka)-50, 
  142.  $y+($wysokosc_slupka/2), $kolor_liczb, $czcionka, 
  143.  $rzad->ilosc_glosow.'/'.$ilosc_glosow);
  144.  
  145. // przesunięcie do następnego słupka
  146. $y=$y+($wysokosc_slupka+$odleglosc_slupkow);
  147. }
  148.  
  149. /*********************************************
  150.   Wyświetlenie obrazka
  151. *********************************************/
  152. Header('Content=type: image/png');
  153. ImagePNG($ob);
  154.  
  155. /*********************************************
  156.   Zwalnianie zasobów
  157. *********************************************/
  158. ImageDestroy($ob);
  159. ?>
  160.  
  161. ?>


próbowałem juz to przekształcać na zwykłe połączenie ale nie udało się
może wam się jakoś uda bym był bardzo wdzięczny :roll2:


--------------------
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #9





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Cytat(Lejto @ 26.06.2007, 15:04:40 ) *
powiec mi tylko gdzie wpisać
  1. <?php
  2. --with-mysqli=mysql_config_path/mysql_config, gdzie mysql_config_path
  3. ?>


serwer mam apache


Tu jest istotne, jaki masz system operacyjny, bo to polecenie jest fragmentem większego polecenia konfigurującego php do procesu kompilacji na np. Linuksie.
Serwer nie ma znaczenia w tym wypadku.

Pozdrawiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
Lejto
post
Post #10





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

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


no pomoże mi ktoś?


--------------------
Go to the top of the page
+Quote Post
elektrrrus
post
Post #11





Grupa: Zarejestrowani
Postów: 175
Pomógł: 18
Dołączył: 11.06.2007
Skąd: Koszalin/Poznań

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


Nie napisałeś nawet czy serwer na windowsie czy linuksie. Co do windowsa, mpps podał juz powyżej rozwiązanie. Co do linuksa, zależy czy masz php skompilowane z mysqli. Jeśli nie działa od razu, to czeka Cię zapewne samodzielna kompilacja. No chyba że jak dobrze poszukasz znajdziesz gdzieś gotowca w pakiecie rpm, deb, tgz, zależy jaką masz dystrybucję.
A tak swoją drogą, można użyć do tekiego prostego działania zwykłe mysql_connect, mysql_select_db itd. Albo PDO, widzę że php5 używasz, więc z tym nie powinno być problemu.

Ten post edytował elektrrrus 30.06.2007, 18:53:37
Go to the top of the page
+Quote Post
Lejto
post
Post #12





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

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


mam windowsa ale chodzi o ten przykład czy mógłby ktos go przerobić na szwykłe połączenia?
bo mi się nie udaje

Ten post edytował Lejto 30.06.2007, 20:31:34


--------------------
Go to the top of the page
+Quote Post
elektrrrus
post
Post #13





Grupa: Zarejestrowani
Postów: 175
Pomógł: 18
Dołączył: 11.06.2007
Skąd: Koszalin/Poznań

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


W czym się nie udało? Gdzie były problemy? Prosze pokazać konkrety. Jeśli się mylę, to niech mnie ktoś poprawi, ale od konkretynych rozwiązań to jest na tym forum osobny dział, gdfzie zamieszcza się zapotrzebowanie i osoby odpowiadaja na to wraz z ceną. Tu chyba chodzi o to, żeby się czegoś samemu nauczyć...
Go to the top of the page
+Quote Post
Lejto
post
Post #14





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

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


ok już mi się udało


--------------------
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 Aktualny czas: 20.08.2025 - 04:28