Nowe posty

Autor Wątek: mysqli  (Przeczytany 4940 razy)

hiryuu

  • Gość
mysqli
« dnia: 2007-02-05, 20:56:28 »
Niewiem gdzie robie blad mam taki skrypt:

...
$db=new mysqli($addr,$user,$pass,$base);
            
$sql="CREATE TABLE ? (? VARCHAR(10) NOT NULL, ? VARCHAR(40) NOT NULL, PRIMARY KEY(?))";
$command=$db->prepare($sql);

var_dump($command); //false :[
                     $command->bind_param("ssss","users","user","pass","user");
$command->execute();
$command->close();
$db->close();
...
?>

Dostaje takie cos: "Call to a member function bind_param() on a non-object",
wywolanie metody na nie-obiekcie.

Dodam, ze: mysqli jest zainstalowane (sprawdzalem przez  print_r(get_loaded_extensions())).

localghost

  • Gość
mysqli
« Odpowiedź #1 dnia: 2007-02-05, 21:52:55 »
przeczytaj dokladnie to: http://pl.php.net/manual/pl/function.mysqli-prepare.php

"
...
In general, parameters are legal only in Data Manipulation Languange (DML) statements, and not in Data Defination Language (DDL) statements.
...
"

oraz to: http://en.wikipedia.org/wiki/Data_Definition_Language

[edit] tak swoja droga to przydaloby sie jeszcze dodac do tego kodu sprawdzanie nawiazania polaczenia z baza oraz wartosci zwracanej przez prepare

yamamoto

  • Gość
mysqli
« Odpowiedź #2 dnia: 2007-02-13, 02:04:44 »
> [edit] tak swoja droga to przydaloby sie jeszcze dodac do tego kodu sprawdzanie nawiazania
 > polaczenia z baza oraz wartosci zwracanej przez prepare
Wszystko jest tylko chcialem jak najbardziej skrocic kod ktory tu wkleilem, dzieki za odpowiedz.