Autor Zpráva
pitomec
Profil
ahoj,

uz se to tady projednavalo ale nikdy ne do konce...:
Jakou funkci mam pouzit na to kdyz chci automatickym skriptem dostat do databaze vytvoreni tabulek... diky vsem
Joker
Profil
Vytvoření tabulky je SQL dotaz, takže se posílá přes něco_query() (třeba pro MySQL tedy mysql_query()), stejně jako ostatní dotazy.
pitomec
Profil
ale ja jsem zapomnel, ja to chci pres soubor = ze nacte data.sql a vykona...
temistokles
Profil
najlahsie bude pouzit na import phpmyadmina. tomu mozes poslat subor a on ho spracuje.
tiso
Profil
http://mm.gene.cz
pitomec
Profil
ale ja bych potreboval aby to nacetl a vykonal skript...
tiso
Profil
http://mm.gene.cz

a v PHP potrebuješ mysql_query()
pitomec
Profil
tohle mi na ten SOURCE napise:

Dotaz nelze provést: Va-Bąe syntaxe je nějaká divná bl-Bízko ' last_name_admin varchar(25) character set utf8 collate utf8_' na řádku 3
pitomec
Profil
tohle mi na ten SOURCE napise:

Dotaz nelze provést: Va-Bąe syntaxe je nějaká divná bl-Bízko ' last_name_admin varchar(25) character set utf8 collate utf8_' na řádku 3
tiso
Profil
Na collate máš asi starú databázu...
Existuje aj originál manuál, hľadaj tam: http://dev.mysql.com/doc/ alebo na http://php.net
pitomec
Profil
ja nevim, jsem na b-a-n-a-n*novici
anode
Profil
Možná kdybys přesně vypsal dotaz, který se pokoušíš vykonat, dalo by se poradit. Tahle chybová hláška nikomu nic neřekne, možná že ti v definici tabulky chybí čárka nebo konec závorky před 'last_name_admin', ale to můžu jen hádat.
tiso
Profil
pitomec
Nepoznáš phpinfo()? Nahraj na hosting súbor s názvom nazov.php a obsahom:
<?php

phpinfo();
?>

spusti ho a hneď zistíš akú databázu máš, okrem toho kopec iných vecí...
krteczek
Profil
nejlíp je všechny dotazy nejprve sestavit a uložit do proměnné a teprve potom vykonat. Takže místo:

$v = mysql_query("SELECT * FROM tabulka");

používat následující postup:

$dotaz = "SELECT * FROM tabulka";
echo $dotaz;
if($v = mysql_query($dotaz))
{
//zpracovat výsledek
}
else
{
ECHO MYSQL_ERROR();
//JEŠTĚ LEPŠÍ JE NAPSAT SI FUNKCI,
// KTERÁ CHYBU ZPRACUJE A POŠLE MAILA
// ADMINOVI PORTÁLU STÍM, ŽE SE NECO DEJE, CO A PROČ
//OBSAH CHYBY, A SAMOZREJMĚ I TEN CHYBNÝ DOTAZ
}

člověk tím získá poněkud detailnější informace o dotaze samotném,to echo $dotaz tam dát jen pro kontrolu, abyste věděl jak vlastně vypadá.
krteczek
pitomec
Profil
ted jsem zkousel tohle:

$all = "CREATE TABLE `zs_admin_users` (
userid_admin int(25) NOT NULL auto_increment,
first_name_admin, varchar(25) character set utf8 collate utf8_czech_ci, NOT NULL, default ,
last_name_admin varchar(25) character set utf8 collate utf8_czech_ci NOT NULL default ,
email_address_admin varchar(25) character set utf8 collate utf8_czech_ci NOT NULL default ,
username_admin varchar(25) character set utf8 collate utf8_czech_ci NOT NULL default ,
password_admin varchar(255) character set utf8 collate utf8_czech_ci NOT NULL default ,
info_admin text character set utf8 collate utf8_czech_ci NOT NULL,
user_level_admin enum('0','1','2','3','4','5') NOT NULL default '0',
signup_date_admin datetime NOT NULL default '0000-00-00 00:00:00',
last_login_admin datetime NOT NULL default '0000-00-00 00:00:00',
activated_admin enum('0','1') NOT NULL default '0',
PRIMARY KEY (userid_admin)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=25 ;
";

$result = mysql_query($all) or die("Dotaz nelze provést: " . mysql_error());
a tohle nejde :(
krteczek
Profil
[b][/b]
$all = "CREATE TABLE `zs_admin_users` (

userid_admin int(25) NOT NULL auto_increment,
first_name_admin varchar(25) character set utf8 collate utf8_czech_ci NOT NULL default ,
last_name_admin varchar(25) character set utf8 collate utf8_czech_ci NOT NULL default ,
email_address_admin varchar(25) character set utf8 collate utf8_czech_ci NOT NULL default ,
username_admin varchar(25) character set utf8 collate utf8_czech_ci NOT NULL default ,
password_admin varchar(255) character set utf8 collate utf8_czech_ci NOT NULL default ,
info_admin text character set utf8 collate utf8_czech_ci NOT NULL,
user_level_admin enum('0','1','2','3','4','5') NOT NULL default '0',
signup_date_admin datetime NOT NULL default '0000-00-00 00:00:00',
last_login_admin datetime NOT NULL default '0000-00-00 00:00:00',
activated_admin enum('0','1') NOT NULL default '0',
PRIMARY KEY (userid_admin)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=25 ;
";


vyzkoušej tutoverzi (přebývaly ti tam čárky)
krteczek
pitomec
Profil
bohuzel, pise to samy


Dotaz nelze provést: Va-B�e syntaxe je n�jak� divn� bl-B�zko ' last_name_admin varchar(25) character set utf8 collate utf8_' na ��dku 5
krteczek
Profil
no jasně za default ti chybí ta defaultní hodnota!!! puvodně tam asi byli uvozovky, nebo apostrofy!
first_name_admin varchar(25) character set utf8 collate utf8_czech_ci NOT NULL default ,
přepiš na:
first_name_admin varchar(25) character set utf8 collate utf8_czech_ci NOT NULL default '', //bud uvozovky nebo apostrofy, co ti tam bude více vyhovovat
krteczek
pitomec
Profil
To taky nejde, napise to samy....
tiso
Profil
pitomec
Opakujem že máš starú databázu!
Toto téma je uzamčeno. Odpověď nelze zaslat.

0