non riesco a capire quale sia l'errore [SQL]

giuseppe98594

Nuovo Utente
29 Giu 2020
2
0
1
//database connessione
$user = 'root';
$password = 'root';
$db = 'personedati';
$host = 'localhost';
$port = 3306;

$link = mysql_connect(
"$host:$port",
$user,
$password
);
$db_selected = mysql_select_db(
$db,
$link
);
//fine database connessione
//inserimento dati in database
INSERT INTO personedati (nome,cognome,age)
VALUES (Ucwords($name),Ucwords($lastname),$age);
//fine inserimento dati in database
 

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.250
324
83
@giuseppe98594
  1. Il problema va spiegato nel post non nel titolo e va espresso dettagliamente e chiaramente
  2. Il codice va postto come da regolamento usando i tag appropriati
Il tuo cosa è un esercizio scolastico?

Prima di continuare sul forum leggi attentamente il regolamento generale e quello di sezione
 

MarcoGrazia

Utente Attivo
15 Dic 2009
764
15
18
58
Udine
www.stilisticamente.com
//database connessione
$user = 'root';
$password = 'root';
$db = 'personedati';
$host = 'localhost';
$port = 3306;

$link = mysql_connect(
"$host:$port",
$user,
$password
);
$db_selected = mysql_select_db(
$db,
$link
);
//fine database connessione
//inserimento dati in database
INSERT INTO personedati (nome,cognome,age)
VALUES (Ucwords($name),Ucwords($lastname),$age);
//fine inserimento dati in database
Qui i problemi sono molteplici, intanto studiati le mySQL improved, ovvero usa mysqli_ perché quelle senza la i finale, sono state eliminate dalla versione 7 del PHP e dichiarate deprecate fin dalla versione 5.5.0 il che mi fa pensare che usi "qualcosa di molto vecchio".
Poi, in una query non puoi usare comandi PHP all'interno della stringa stessa ( e nemmeno utilizzare direttamente le variabili se non vuoi problemi ).
Quindi il tuo script potrebbe diventare:
PHP:
......................
$sql = 'INSERT INTO personedati (nome,cognome,age) ';
$sql .= 'VALUES ( ' . ucwords( $name ) . ', ' . ucwords( $lastname ) . ', $age ); --';
//  Poi fai la query
if ( mysql_query( $sql ) === false )
{
  die( 'Invalid query: ' . mysql_error() );
}