Avatar billede bromer Nybegynder
07. maj 2000 - 16:41 Der er 8 kommentarer og
4 løsninger

PHP variabel i MySql query

Hejsa

Jeg har et lille problem, med en mysql query. Jeg vil lave et nyt table i MySql og vil bruge en php variabel som navn. Min kode ser ud som følger:
<?
$table_name;
mysql_query("CREATE TABLE $table_name.......");
?>

I behøver ikke at se resten af koden, for hvis jeg istedet for variablen skriver et almindeligt navn, så virker det og der bliver oprettet et table, men hvorfor vil det ikke med en php variable. Håber i kan hjælpe.
Avatar billede itux Nybegynder
07. maj 2000 - 17:01 #1
Du bruger nok en php-variabel inden i et almindeligt navn, som her:
<?
$table_name = "xxx";
mysql_query("create table navn_$table_name......");
?>

Prøv i stedet at lægge hele navnet ind i en variabel før du udfører query'en:

<?
$table_name = "navn_xxx";
mysql_query("create table $table_name...");
?>
Avatar billede steffen Nybegynder
07. maj 2000 - 17:07 #2
Hvis du deklarerer dit $table_name i en subrutine el. lign. er den nok nedlagt før du kommer til at bruge den.

Prøv at "echo $table_name;" lige før du bruger den til at oprette din tabel med.
Avatar billede bromer Nybegynder
07. maj 2000 - 17:18 #3
>>itux Det ved jeg og har ikke lavet den fejl.

>>steffen Det har jeg prøvet, men det virker statid ikke
Avatar billede erikjacobsen Ekspert
07. maj 2000 - 19:21 #4
Så vis os noget mere af din kode. For det du prøver kan helt klart
lade sig gøre. Vi gør det allesammen masser af gange hver dag.
Avatar billede digihosting Nybegynder
07. maj 2000 - 23:22 #5
Prøv at tilføje '' sådan her:

mysql_query("CREATE TABLE '$table_name' .......");
Avatar billede bromer Nybegynder
09. maj 2000 - 08:30 #6
Jeg gør det også, hvis jeg f.eks. tilføjer noget til et table, så jeg synes at det er helt vildt skummelt. Du kan faktisk se på koden fra digihosting for det er helt min kode, og hvis jeg fjerne $ så det ikke er en variable opretter den tabellen, men det virker ikke hver med ' eller uden.
Avatar billede geko Nybegynder
09. maj 2000 - 09:33 #7
Det er ok bare ' der mangler i din kode
Avatar billede nerdyguy Nybegynder
09. maj 2000 - 09:56 #8
Kik i PhpMyAdmin ...
Det bruges nøjagtig samme eksempel!!!
Avatar billede erikjacobsen Ekspert
09. maj 2000 - 10:19 #9
Bromer: hvis vi skal komme videre, må vi altså se noget mere af din kode !!
Avatar billede steffen Nybegynder
09. maj 2000 - 10:48 #10
Din variabel er altså tom når du prøver at bruge den .. som way or another.

Hvis du skriver:

<?
$table_name="test_goforit";
mysql_query("CREATE TABLE $table_name.......");
?>

Så vil du se at du får oprettet test_goforit ..

Check for fejl i store/små bogstaver i dit script ..
Avatar billede geko Nybegynder
09. maj 2000 - 11:46 #11
Jeg vil stadig sige at du skal skrive:

<?
$table_name="test_goforit";
mysql_query("CREATE TABLE '$table_name'.......");
?>

MED ' for at det virker, måske mangler du at definere dit link, det burde ikke have nogen betydning, men prøv
mysql_query("det SQL shit", $database_connectionen);
hvis du har gevet den et navn
Avatar billede erikjacobsen Ekspert
14. maj 2000 - 09:11 #12
Er det ok, bromer? Hvis du skal have mere hjælp, må vi se lidt
mere af din kode.
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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