mysql_query... Variabile?

giorgione_tg

Utente Attivo
31 Mar 2005
108
0
0
40
Roma
www.myspace.com
In teoria mi piacerebbe dare la possibilità di creare un servizio di messagistica simile all'e-mailing...

ma vorrei dare la possibilità che un utente, iscrivendosi, creasse automaticamente una tabella...

//inserisco i dati dell'utente nella tabella degli utenti...
$sqlquery = "INSERT INTO tabellaesistente VALUES ('nome', 'cognome' );";
mysql_query($sqlquery);

//mi piacerebbe inserire una variabile all'interno
$sqlmail = "CREATE TABLE $user ('from', 'title', 'msg');";
mysql_query($sqlmail);

Mi da il seguente errore:
Warning: Supplied argument is not a valid MySQL-Link resource in c:\apache\htdocs\faisci\reg2.php on line 50

Effettivamente non so se si può inserire una variabile all'interno di un'altra variabile... quindi mi chiedo se esiste la possibilità di far creare, durante l'iscrizione, automaticamente una tabella con un nome preciso (quello dell'utente)...
 
prova a togliere il ;

$sqlmail = "CREATE TABLE $user ('from', 'title', 'msg');";
$sqlmail = "CREATE TABLE $user ('from', 'title', 'msg')";

ed inizia a vedere così

e poi la query per la creazione della tabella è sbagliata

il codice, più o meno è

PHP:
$sql = 'CREATE TABLE `prova` ( `id` INT( 10 ) NOT NULL AUTO_INCREMENT ,'
        . ' `mio` VARCHAR( 150 ) NOT NULL ,'
        . ' PRIMARY KEY ( `id` ) );'
        . ' ';

:byebye: :byebye:
 
si, scusate questi errori... (che avevo già corretto... ps: non ho usato il copia e incolla dal codice utilizzato...)

Il mio quesito è:

posso creare automaticamente una tabella col nome dell'utente???

strutturalmente:
-DB- nome database che mi assegna il sito di hosting...
--table- utenti registrati con un nome che assegno io...
---table- una tabella che si autocrea per ogni utente e con il nome di registrazione dello stesso??
 
Dovresti poter riuscire a fare quello che dici tu..ricavando i dati da una pagina html..dove l'utente inserisce il nome e quant'altro all'interno di un form...
basta che nella dichiarazione Create Table metti $_post(o get a seconda di quello che usi nella pagina html)['nome utente inserito'] e successivamente i campi della tabella
quindi sarà

$sqlmail = "CREATE TABLE $_POST['nomeutente'] ('from', 'title', 'msg');";
ovviamente nella pagina html ci sarà la casella di testo in cui inserisci il nome utente che chiamerai appunto 'nomeutente'
e ricordati di mettere in form...
<form method="post" action="http://durectory/nome del file.php">

e volendo puoi anche far stabilire all'utente il noem dei campi..usando la stessa tecnica all'interno delle parentesi tonde..
cioè
$sqlmail = "CREATE TABLE $_POST['nomeutente'] ("$_POST['primo campo']","$_POST['secondo campo']", ecc);";

Non l'ho provato personalmente..ma ho provate altre funzioni..tipo interrogazioni modifiche e cancellazioni di record..
Prova..e fai sapere ;-)
 
Ultima modifica:

Discussioni simili