Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]jak zmienić ten kod aby działał
Forum PHP.pl > Forum > Przedszkole
arczi001
  1. [/PHP]<?php
  2. class utworz_baze
  3. {
  4. private $connect;
  5. function __construct($host,$uz,$haslo)
  6. {
  7. @$polacz = mysql_connect($host,$uz,$haslo);
  8. if(!$polacz)
  9. {
  10. echo "brak połączenia z bazą<br/>";
  11. }
  12. $this -> connect = $polacz;
  13. }
  14.  
  15. public function display($zap)
  16. {
  17. $result = mysql_query ($this -> connect, $zap);
  18. if(!$result)
  19. {
  20. echo "wystąpił błąd zapytania SQL";
  21. }
  22. }
  23.  
  24. $host = 'localhost';
  25. $uz = 'archy';
  26. $haslo = '121234';
  27. $utw = new utworz_baze($host,$uz,$haslo);
  28. $zap = ("CREATE DATABASE IF NOT EXISTS katalog_ksiązek ");
  29. $z ->display($zap);
  30.  
  31.  
  32.  
  33.  
  34. ?>[PHP]
miras
Jak się już otworzyło

  1. class utworz_baze
  2. {
  3.  


to trzeba też zamknąć
  1.  
  2. }
arczi001
faktycznie to przeoczyłem dzięki , ale dalej wywala błędy:

Notice: Undefined variable: z in C:\wamp\www\praca\index.php on line 31

oraz

Fatal error: Call to a member function display() on a non-object in C:\wamp\www\praca\index.php on line 31
miras
spróbuj dodać to:

  1.  
  2. $z = new utworz_baze;
  3. $z ->display($zap);
  4.  
arczi001
coś ruszyło ale pojawiły się kolejne błędy

Warning: Missing argument 1 for utworz_baze::__construct(), called in C:\wamp\www\praca\index.php on line 31 and defined in C:\wamp\www\praca\index.php on line 6

Warning: Missing argument 2 for utworz_baze::__construct(), called in C:\wamp\www\praca\index.php on line 31 and defined in C:\wamp\www\praca\index.php on line 6

Warning: Missing argument 3 for utworz_baze::__construct(), called in C:\wamp\www\praca\index.php on line 31 and defined in C:\wamp\www\praca\index.php on line 6

oraz echo wyświetliło błąd zapytania
ikssde
Zamień:

  1. $z->display($zap);


na:

  1. $utw->display($zap);
miras
  1. <?php
  2.  
  3. define("MYSQL_HOST", "localhost");
  4. define("MYSQL_USER", "x");
  5. define("MYSQL_PASS", "x");
  6. define("MYSQL_DBNAME", "x");
  7.  
  8. class utworz_baze
  9. {
  10. public $pdo;
  11. public function __construct()
  12. {
  13. try
  14. {
  15. $this->pdo = new PDO('mysql:host='.MYSQL_HOST.'; dbname='.MYSQL_DBNAME, MYSQL_USER, MYSQL_PASS);
  16. $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  17. $this->pdo->exec("SET NAMES utf8");
  18. }
  19. catch (PDOException $e)
  20. {
  21. echo 'Połączenie nie mogło zostać utworzone :(.<br />';
  22. }
  23. }
  24.  
  25. public function display($zap)
  26. {
  27. $result = $this->pdo->exec($zap);
  28. }
  29.  
  30. }
  31.  
  32. $zap = "CREATE TABLE katalog_ksiazek ( id MEDIUMINT(8) NOT NULL AUTO_INCREMENT PRIMARY KEY,pole1 VARCHAR(25) NOT NULL, pole2 VARCHAR(25) NOT NULL)ENGINE = MYISAM;";
  33. $z = new utworz_baze;
  34. $z ->display($zap);
  35.  
  36.  
  37.  
  38.  
  39. ?>
arczi001
pomogło ale dalej nie wykonuje zapytania
miras
Wykonuje, u mnie wszystko dziala.
arczi001
Wszystko ok dzięki
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.