Problema con le tabelle in html

  • Creatore Discussione Creatore Discussione vodka
  • Data di inizio Data di inizio
ciao
scusa mi ero spiegato male
nella parte di codice
PHP:
    PRIMARY KEY (id) )ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 
TABELLA; 

mysql_query($stringa_crea) or die("non è stato possibile creare la tabella"); 
//se non vuoi mettere or die() 
if(mysql_query($stringa_crea)){ 
    echo "creata la tabella"; 
}else{ 
    echo "non è stato possibile creare la tabella"; 
}

devi, in funzione se vuoi usare die o no, o commentare (togliere) la riga
mysql_query($stringa_crea) or die("non è stato possibile creare la tabella");
oppure le righe
if(mysql_query($stringa_crea)){
echo "creata la tabella";
}else{
echo "non è stato possibile creare la tabella";
}

non va bene entrambe
poi un'altra cosa, netti un var dump subito dobo tabella;
PHP:
//......
AUTO_INCREMENT=1 
TABELLA;
var_dump($stringa_crea);
//.......
e verifica cosa ti restituisce, dovrebbe darti
string (xy) e tuttu quello che è compreso tra <<<TABELLA e TABELLA; e verifichi che sia scritto giusto
 
si mi ero accorto del doppio die diciamo e l'if l'avevo tolto, quindi ho aggiunto quell'istruzione var dump...ma mi dà errore così:

Parse error: syntax error, unexpected T_SL in E:\Program Files\EasyPHP-5.3.2i\www\creazionetabella.php on line 9
 
ciao
verifica che la riga con TABELLA; sia scritta con tabella perfettamente sul lato sinistro senza nulla davanti, nemmeno spazi.
mal che vada sostituisci con

PHP:
<?php
//....
$stringa_crea="
    CREATE TABLE clienti IF NOT EXIST( 
    id int(20) NOT NULL auto_increment, 
    nome varchar(15) NOT NULL, 
    cognome varchar(15) NOT NULL, 
    luogo_nascita varchar(20) NOT NULL, 
    data_nascita varchar(20) NOT NULL, 
    sesso varchar(7) NOT NULL, 
    via varchar(30) not null, 
    cap varchar(7) not null, 
    numero varchar(3) not null, 
    citta varchar(20) not null, 
    provincia varchar(2) not null, 
    PRIMARY KEY (id) )ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1";
//....
?>
però non dovrebbe darti errore (se l'hai scritta giusta)
 
Ho sostituito con il codice che mi hai postato ora e mi dà questo:

string(526) " CREATE TABLE clienti IF NOT EXIST( id int(20) NOT NULL auto_increment, nome varchar(15) NOT NULL, cognome varchar(15) NOT NULL, luogo_nascita varchar(20) NOT NULL, data_nascita varchar(20) NOT NULL, sesso varchar(7) NOT NULL, via varchar(30) not null, cap varchar(7) not null, numero varchar(3) not null, citta varchar(20) not null, provincia varchar(2) not null, PRIMARY KEY (id) )ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1" non è stato possibile creare la tabella
 
ciao
piccolo dubbio:
hai messo i dati di connessione al db prima di creare la tabella?
i dati di connessioni vanno messi in ogni pagina in cui si usa il db, io non li avevo messi perchè mi sembrava evidente
 
Questo è tutto ciò ke ho scritto (le indentature ci sono solo k qui nn escono)
<?php
$host='127.0.0.1';
$user='mionome';
$password='miapassword';
$database='informazionipers';
$db=mysql_connect($host, $user, $password) or die ("impossibile connettersi al server $host");
mysql_select_db($database, $db) or die ("impossibile connettersi al database $database");
$stringa_crea="
CREATE TABLE clienti IF NOT EXIST(
id int(20) NOT NULL auto_increment,
nome varchar(15) NOT NULL,
cognome varchar(15) NOT NULL,
luogo_nascita varchar(20) NOT NULL,
data_nascita varchar(20) NOT NULL,
sesso varchar(7) NOT NULL,
via varchar(30) not null,
cap varchar(7) not null,
numero varchar(3) not null,
citta varchar(20) not null,
provincia varchar(2) not null,
PRIMARY KEY (id) )ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1";

var_dump($stringa_crea);

mysql_query($stringa_crea) or die("non è stato possibile creare la tabella");
mysql_close($db);
?>
 
ciao
mea culpa, mea.... ho fatto un errore di battitura
CREATE TABLE IF NOT EXISTS clienti
mi ero dimenticato una S
:crying:
correggi e sappimi dire.
 
finalmente ora funziona !! :) Solo una cosa volevo chiederti, ma anke la creazione del database si fà tramite istruzioni oppure bisogna crearlo da phpmyadmin?
perchè io in questo caso l'ho creato da phpmyadmin xkè altrimenti mi diceva impossibile connettersi al database
 
ciao
si puoi creare con php
la sintassi è la stessa circa,
pero l'istruzione
mysql_select_db($database, $db) or die ("impossibile connettersi al database $database");
devi o eliminarla o metterla dopo la creazione, altrimenti è logico che ti dia impossibile selezionare db
 
si ma l'istruzione per la creazione qualè?
io ho provato a commentare l'istruzione che tu mi hai suggerito di eliminare ma il database non me lo crea
 
ciao
la sintassi è questa
PHP:
<?php
$db=mysql_connect($host, $user, $password) or die (mysql_error()); 

$query_crea_db="CREATE DATABASE IF NOT EXISTS informazionipers CHARACTER SET latin1";

mysql_query($query_crea_db) or die(mysql_error());

?>
al posto della frase nell' or die metti mysql_error() così si capisce meglio l'eventuale tipo di errore
 
Ciao ^^ ero interessata alla risoluzione di questo tipo di esercizio ( il problema è lo stesso ) solo con la differenza che devo ritornare una tabella con due colonne e devo usare il costrutto foreach per poter risolvere tale esercizio ... HELP ME PLEASE :(
 
ciao
intanto benvenuta nel forum
Oggi, 16:55Athene
Ciao ^^ ero interessata alla risoluzione di questo tipo di esercizio ( il problema è lo stesso ) solo con la differenza che devo ritornare una tabella con due colonne e devo usare il costrutto foreach per poter risolvere tale esercizio ... HELP ME PLEASE
cosa intendi per "tabella": la tabella html <table> ... </table> o una tabella del db?
comunque visto che parli del foraech ò meglio che tu faccia un post nella sezione php, spiegando bene cos vuoi sapere.
 
ciao
intanto benvenuta nel forum
Oggi, 16:55Athene

cosa intendi per "tabella": la tabella html <table> ... </table> o una tabella del db?
comunque visto che parli del foraech ò meglio che tu faccia un post nella sezione php, spiegando bene cos vuoi sapere.

Si intendo la tabella html ^^ Thanks for the advise ;)
 

Discussioni simili