Avatar billede nizo Nybegynder
05. april 2005 - 17:28 Der er 21 kommentarer og
2 løsninger

SQL kode til.?

Jeg ska bruge en sql kode i php der laver en database! Jeg har prøvet med  mysql_query("CREATE DB '$_POST[name]'") or die("Unable to create"); men jeg faar fejl meddelsen :S Kan det overhovedet lade sig gøre?
Avatar billede michael_stim Ekspert
05. april 2005 - 17:31 #1
Du skal bare have lidt felter på
Avatar billede Slettet bruger
05. april 2005 - 17:39 #2
Du kan f.eks. gøre noget ala:

$query = 'CREATE TABLE $_POST[name] ( '.
        'id INT NOT NULL AUTO_INCREMENT, '.
        'name VARCHAR(20) NOT NULL, '.
        'email VARCHAR(50) NOT NULL, '.
        'subject VARCHAR(30) NOT NULL, '.
        'message TEXT NOT NULL, '.
        'PRIMARY KEY(id))';

Dette opretter en database, samt felterne message, subject, email, name og id.
Avatar billede michael_stim Ekspert
05. april 2005 - 17:40 #3
Hov, det er jo en database du skal oprette. Så "CREATE DATABASE '$_POST[name]'"
Avatar billede nizo Nybegynder
05. april 2005 - 17:46 #4
You have an error in your SQL syntax near ''navn'' at line 1
Avatar billede Slettet bruger
05. april 2005 - 17:48 #5
tsk ja.
Selvfølgelig som michael_stim siger.
Og så kan du oprette tabeller som mit eksempel ovenfor.
Husk også at den bruger du benytter til din sql query, skal have rettigheder til at oprette databaser.

Se eventuelt dokumentationen for oprettelse.

http://dev.mysql.com/doc/mysql/en/create-database.html
Avatar billede nizo Nybegynder
05. april 2005 - 17:50 #6
Den har problemer med variblen eller noget :S
Avatar billede Slettet bruger
05. april 2005 - 17:50 #7
Prøv med:
mysql_query("CREATE DATABASE $_POST[name]") or die("Unable to create");
Avatar billede nizo Nybegynder
05. april 2005 - 17:53 #8
Jeg lavede en variable ved siden af :)
Nu virker det :P
Avatar billede nizo Nybegynder
05. april 2005 - 17:54 #9
michael_stim gi et svar, i deler pointne :)
Avatar billede nizo Nybegynder
05. april 2005 - 18:56 #10
Hvordan laver man, ligesom et select, saa man ka vise alle databaserne?
Avatar billede michael_stim Ekspert
05. april 2005 - 19:07 #11
ok ;o)
Avatar billede michael_stim Ekspert
05. april 2005 - 20:30 #12
SHOW DATABASES
Avatar billede michael_stim Ekspert
05. april 2005 - 20:38 #13
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
$db_list = mysql_list_dbs($link);

while ($row = mysql_fetch_object($db_list)) {
    echo $row->Database . "\n";
}
?>
Avatar billede nizo Nybegynder
05. april 2005 - 20:41 #14
Warning: mysql_list_dbs(): supplied argument is not a valid MySQL-Link resource in c:\apache\apache\htdocs\dblist.php on line 11

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in c:\apache\apache\htdocs\dblist.php on line 13
Avatar billede michael_stim Ekspert
05. april 2005 - 20:50 #15
Hmmm... Fungerer fint hos mig. Kan det have noget med at du skal grante et eller andet?
Avatar billede michael_stim Ekspert
05. april 2005 - 20:55 #16
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
Har du ändret dataen i denne linie?
Avatar billede nizo Nybegynder
05. april 2005 - 21:05 #17
Jeg har fjernet den linie..
Avatar billede michael_stim Ekspert
05. april 2005 - 21:56 #18
OK, så er det nok varabelen den er gal med. Hvad hedder $link hos dig?
->->$dinVariabel = mysql_connect('localhost', 'mysql_user', 'mysql_password');
$db_list = mysql_list_dbs($dinVariabel);
Avatar billede nizo Nybegynder
06. april 2005 - 09:48 #19
Jeg ska ikke bruge mysql connect, da jeg kun bruger det paa min egen com (apache).
Men der ska vel ogsaa være et db select?
altsaa:

$link = mysql_select_db('test');
$db_list = mysql_list_dbs($link);

eller noget..
Avatar billede michael_stim Ekspert
06. april 2005 - 10:09 #20
Du skal connecte til databasen, ligemeget hvilken server den ligger på.
Avatar billede michael_stim Ekspert
06. april 2005 - 10:11 #21
Og du skal ikke selecte db heller, for du vil jo se allesammen. Eller mener du tabeller i din database?
Avatar billede nizo Nybegynder
06. april 2005 - 19:24 #22
Ikke tabeller nej, hvis jeg laver mysql connect for jeg blot en fejl meddelse. Der er ingen kode eller brugernavn paa den. Eller man ska hvertfald ikke bruge det.
Avatar billede michael_stim Ekspert
06. april 2005 - 20:26 #23
Så skriver du bare:
$link = mysql_connect('localhost', '', '');
Er du ikke sikker på du skal skrive root som bruger?
$link = mysql_connect('localhost', 'root', '');
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester