Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
In tre giorni a Las Vegas Oracle ha presentato agenti che eseguono il lavoro, l'alleanza con OpenAI e un cloud aperto agli acceleratori di tutti. Ma i clienti europei chiedono garanzie prima ancora delle funzionalità
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 16-06-2004, 12:35   #1
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
Alcune domandine su Php/MySql

Ciao,
stavo vedendomi un tutorialdi FreePhp.it come funziona MySql interfacciato al Php....

Ho fatto questa parte di script ma Apache mi dà il seguente errore:
Parse error: parse error, unexpected T_ELSEIF in c:\programmi\easyphp\www\scrptdb\save.php on line 14

L'errore dovrebbe trovarsi alla riga dove applica la funzione trim ma non riesco a capire cosa ci sia che non vada...
questo è il codice completo:

<?
include("top_foot.php");
include("config.inc.php");
top();

if("$pass!=$password"); // Controlla se la password immessa nel forum corrisponde al valore della variabile $password memorizzata in config.inc.php
echo "Password errata";

// Verifica che i campi titolo e testo non siano vuoti o composti da soli spazzi

/* La funzione trim ha lo scopo di eliminare caratteri vuoti dall'inizio e dalla fine della stringa così da non
accettare stringhe composte da soli spazi prive di contenuto informativo */

elseif(trim($titolo) == "" OR trim($testo) == "");
echo "I campi Titolo e Testo devono essere inseriti !!!";

/* Verifica che le stringhe inserite non contengono caratteri particolari come gli apici o le virgolette quindi
prima toglie gli slash e poi li reinserisce per essere sicuri che le stringhe siano preceduto dallo slash */

else:
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$mail = addslashes(stripslashes($mail));
$testo = addslashes(stripslashes($testo));

/* Per non avere problemi con alcuni caratteri che vanno in contrasto con i tag html (come < e >) lo script li
sostituisce con i corrispondenti in html e inserisce nel testo il carattere di fineriga. */

$titolo = str_replace("<", "&lt", $titolo);
$titolo = str_replace(">", "&gt", $titolo);
$autore = str_replace("<", "&lt", $autore);
$autore = str_replace(">", "&gt", $autore);
$testo = str_replace("<", "&lt", $testo);
$testo = str_replace(">", "&gt", $testo);
$testo = nl2br($testo);

/* Lo script converte ora la data in formato timestamp mediante la funzione mktime */

$data = mktime("0", "0", "0", $mese, $giorno, $anno);

/* Lo script si collega al db */

$db = mysql_connect($db_host, $db_user, $db_password); // Viene assegnato un valore TRUE o FALSE alla variabile $db a seconda che la connessione sia andata a buon fine o meno
if ($db == FALSE)
die ("Errore nella connessione, verificare i parametri inseriti nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

/* Query che si occupa dell'inserzione dei dati immessi nel db */

$query = "INSERT INTO news (titolo, testo, data, autore, mail) VALUES ('$titolo', '$testo', '$data', '$autore', '$mail')";

/* Verifico l'avvenuta inserzione dei dati nel db */

if(mysql_query($query, $db))
echo "L'articolo è stato inserito correttamente";
else
echo "Errore durante l'inserimento dell'articolo nel db !!!";
mysql_close($db); endif;
foot();
?>

Poi ho qualche altro dubbio su questa parte di codice che fà in modo che lo script si connetta al database:

$db = mysql_connect($db_host, $db_user, $db_password); // Viene assegnato un valore TRUE o FALSE alla variabile $db a seconda che la connessione sia andata a buon fine o meno
if ($db == FALSE)
die ("Errore nella connessione, verificare i parametri inseriti nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

Paricamente la funzione mysql_connect prende in ingreso il parametro $db_host che contiene l'host sul quale risiede il db, $db_user che contiene l'utente e $db_password che contiene la password per connettersi al db....se la connessione ha successo la variabile $db viene inizializzata a TRUE se non ha successo viene inizializzata a FALSE e lo script stampa il messaggio di errore....fino quà non dovrebbero esserci problemi concettuali...

La cosa che non mi è ben chiara è invece il funzionamento della funzione mysql_select_db...da quello che ho capito questa funzione seleziona il db da usare, giusto?
I parametri che ha in entrata sono $db_name che contiene il nome del db, e fin quà tutto ok, e $db...ma $db non conteneva solamente TRUE o FALSE dell'avvenuta connessione?Perchè glielo devo passare a mysql_select_db?Per fargli capire che la connessione è avvenuta con successo e che può selezionare il db giusto? booo svelatemi voi questo mistero....

Altra domanda sempre relativa alla funzione mysql_select_db...da quello che ho letto restituisce direttamente un valore o TRUE o FALSE e non c'è bisogno di metterlo in una variabile per poi fare il controllo
Quando faccio:
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

vuol dire che se non è andata a buon fine stampa direttamente il messaggio di errore?!?! ma Php dove lo va a mettere il valore TRUE o FALSE per decidere cosa fare

Grazie
Andrea
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
Old 16-06-2004, 13:34   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
A $db viene assegnato FALSE se fallisce la chiamata...altrimenti gli viene assegnato un identificativo della connessione al DB

or è un operatore che ritorno vero (diverso da false) quando uno dei due parametri sono diversi da FALSE... L'operatore è associativo a sinistra quindi viene valutato prima il parametro di sinistra (il valore ritornato da mysql_select_db)...se il primo è vero non valuta il secondo (c'è già un parametro diverso da false)...ma se mysql_select_db allora valuta anche il secondo che a questo punto termina lo script e visualizza l'errore...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 16-06-2004, 13:36   #3
D4rkAng3l
Bannato
 
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2688
Grazie mille Cionci
D4rkAng3l è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
Il razzo spaziale New Glenn di Blue Orig...
La Cina si prepara al primo lancio orbit...
Sale LAN, la Manovra 2027 introduce una ...
11 prezzi imperdibili in Amazon: non sol...
Giù i prezzi di Xiaomi 17T e Xiao...
Una tassa di 5,5 centesimi su ogni gigab...
Vuoi clonare un videogioco con l'IA? Cla...
Furto da 6,3 miliardi di dollari, Binanc...
Gli USA dipendono dai robot stranieri: T...
Volkswagen non ha più soldi per l...
Telescopio spaziale Hubble: la NASA cerc...
Più sottile e potente: le nuove i...
Il JPL estende la vita operativa della s...
DAZN Full è in offerta: tutta la ...
GTA 6 su PC potrebbe arrivare prima del ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:26.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v