Torna indietro   Hardware Upgrade Forum > Software > Programmazione

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.
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Abbiamo provato Samsung Galaxy Tab S12 Ultra nella versione 12 GB + 256 GB con tastiera, e il risultato è un tablet che in questa configurazione si comporta come un notebook con la fluidità tipica di Android. Spessore di 5,1 mm, display Dynamic AMOLED 2X da 14,6 pollici, MediaTek Dimensity 9500 e un software senza incertezze compongono un prodotto di vertice, con prezzi da 1.539 euro, frenato solo da un'autonomia nella parte bassa del confronto
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 essere termica (e ci riesce da paura)
Abbiamo provato per dieci giorni la Hyundai IONIQ 5 N, con 650 CV, 770 Nm e uno 0-100 km/h in 3,4 secondi. Il suo punto forte è N e-Shift, che simula un cambio a otto rapporti con suoni da motore termico e perfino un bang supersonico
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-07-2005, 18:42   #1
ygnoto
Bannato
 
L'Avatar di ygnoto
 
Iscritto dal: Jan 2005
Messaggi: 47
[PHP] Creazione pannello inserimento dati

Sto creando un pannello spartano per l'inserimento degli articoli...

Ho creato una pagina config.inc.php con all'interno le istruzioni per connettersi al database...


Codice PHP:
Codice PHP:
<?php 
$db_host 
= "localhost"; 
$db_user = "root"; 
$db_password = "mia_password"; 
$db_name = "test"; 
$password = "ciao"; 
?>

Poi tramite la pagina insert.htm invio i valori:


Codice HTML:
Codice HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Documento senza titolo</title>
</head>

<body>
<form method=post action=save.php>
<br>
Materia:<br>
<select name=materia>
<option value=1>Fisica
<option value=2>Chimica
<option value=3>Biologia
<option value=4>Matematica
<option value=5>Astronomia
<option value=6>Scienze della terra
<option value=7>Medicina
</option></select><br><br>
Titolo:<br>
<input type=text size=40 name=titolo><br><br>
Descrizione:<br>
<textarea cols=80 rows=5 name=descrizione></textarea><br><br>
Articolo:<br>
<textarea cols=80 rows=20 name=articolo></textarea><br><br>
Autore:<br>
<input type=text size=40 name=autore><br><br>
Mail:<br>
<input type=text size=40 name=mail><br><br>
Password:<br>
<input type=password size=20 name=pass><br><br>
<input type=submit value=Invia><br>
</form>
</body>
</html>

Adesso la pagina save.php che riceve i valori...


Codice PHP:
Codice PHP:
<?php 
include("config.inc.php"); 
if(
$pass != $password): 
echo 
"Password errata"; 
elseif(
trim($titolo) == "" OR trim($descrizione) == "" OR trim($articolo) == "" OR trim($autore) == "" OR trim($mail) == ""): 
echo 
"Alcuni campi non sono stati compilati!!!"; 
else: 
$titolo = addslashes(stripslashes($titolo)); 
$descrizione = addslashes(stripslashes($descrizione)); 
$articolo = addslashes(stripslashes($articolo)); 
$autore = addslashes(stripslashes($autore)); 
$mail = addslashes(stripslashes($mail)); 
$titolo = str_replace("<", "&lt;", $titolo); 
$titolo = str_replace(">", "&gt;", $titolo); 
$descrizione = str_replace("<", "&lt;", $descrizione); 
$descrizione = str_replace(">", "&gt;", $descrizione); 
$articolo = str_replace("<", "&lt;", $articolo); 
$articolo = str_replace(">", "&gt;", $articolo); 
$articolo = nl2br($articolo); 
$autore = str_replace("<", "&lt;", $autore); 
$autore = str_replace(">", "&gt;", $autore); 
$db = mysql_connect($db_host, $db_user, $db_password); 
if(
$db == FALSE) 
die(
"Errore nella connessione. Verificare i parametri 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 = "INSERT INTO articoli (materia, titolo, descrizione, articolo, autore, mail) VALUES ('$materia', '$titolo', '$descrizione', '$articolo', '$autore', '$mail')"; 
if(
mysql_query($query, $db)) 
echo 
"L'articolo è stato inserito correttamente"; 
else 
echo
"Errore durante l'inserimento"; 
mysql_close($d); endif; 
?>

Il problema è che quando vado ad inserire l'articolo mi dà sempre che la password è errata... perchè

Grazie
ygnoto è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 18:48   #2
fabio1883
Member
 
Iscritto dal: Jul 2005
Messaggi: 103
Scusa la domanda: ma hai inserito la stessa password che hai scelto durante l'installazione del server mysql?
fabio1883 è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 18:56   #3
ygnoto
Bannato
 
L'Avatar di ygnoto
 
Iscritto dal: Jan 2005
Messaggi: 47
Quote:
Originariamente inviato da fabio1883
Scusa la domanda: ma hai inserito la stessa password che hai scelto durante l'installazione del server mysql?
Che intendi...???

Io inserisco la password "ciao" che ho settato come password per l'inserimento articoli in config.inc.php...
ygnoto è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 19:01   #4
fabio1883
Member
 
Iscritto dal: Jul 2005
Messaggi: 103
per utilizzare un database mysql devi settare un nome utente e una password; di solito questo si fa al momento dell'installazione del server mysql...
Non puoi scegliere una password all'interno del file .inc.php senza avere configurato con tale password il server! Il file inc.php passerà i valori al server, il server verifica se l'utente ha i permessi e dopo ciò concede l'accesso ai dati.

Spero di essere stato abbastanza chiaro
fabio1883 è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 19:06   #5
ygnoto
Bannato
 
L'Avatar di ygnoto
 
Iscritto dal: Jan 2005
Messaggi: 47
Quote:
Originariamente inviato da fabio1883
per utilizzare un database mysql devi settare un nome utente e una password; di solito questo si fa al momento dell'installazione del server mysql...
Non puoi scegliere una password all'interno del file .inc.php senza avere configurato con tale password il server! Il file inc.php passerà i valori al server, il server verifica se l'utente ha i permessi e dopo ciò concede l'accesso ai dati.

Spero di essere stato abbastanza chiaro
Se leggi bene i sorgenti, noti che il problema non è nella connessione al database, tra l'altro già ho fatto qualche prova... se vedi bene io ho creato una password di sicurezza... con all'intervo il valore "ciao" quindi vado a immettere la password, non del database, ma per inserire l'articolo...
Infatti quando mi dice la password è errata, non ho ancora effettuato la connessione al database, infatti, questa avverrà solo quando avrà verificato che la password di autenticazione è corretta...

Capito adesso??? Oppure sono i che mi sbaglio...

Ciao
ygnoto è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 19:13   #6
fabio1883
Member
 
Iscritto dal: Jul 2005
Messaggi: 103
Prova ad aggiungere questa riga nel file save.php prima di tutto:
$pass = ($_POST['pass']);

fammi sapere
fabio1883 è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 19:17   #7
ygnoto
Bannato
 
L'Avatar di ygnoto
 
Iscritto dal: Jan 2005
Messaggi: 47
Adesso ho risolto con la password, ma mi dà che gli sltri campi non funzionano...

Allora mi sa che il problema è lo stesso... seguo il tuo consiglio per le altre variabili...


Grazie 1000
ygnoto è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 19:20   #8
fabio1883
Member
 
Iscritto dal: Jul 2005
Messaggi: 103
Di niente!

Buon lavoro
fabio1883 è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 19:35   #9
ygnoto
Bannato
 
L'Avatar di ygnoto
 
Iscritto dal: Jan 2005
Messaggi: 47
Non è finita...

Codice PHP:
<?php
include("config.inc.php");
if(
$_POST['pass'] != $password):
echo 
"Password errata";
elseif(
trim($_POST['titolo']) == "" OR trim($_POST['descrizione']) == "" OR trim($_POST['articolo']) == "" OR trim($_POST['autore']) == "" OR trim($_POST['mail']) == ""):
echo 
"Alcuni campi non sono stati compilati!!!";
else:
$_POST['titolo'] = addslashes(stripslashes($_POST['titolo']));
$_POST['descrizione'] = addslashes(stripslashes($_POST['descrizione']));
$_POST['articolo'] = addslashes(stripslashes($_POST['articolo']));
$_POST['autore'] = addslashes(stripslashes($_POST['autore']));
$_POST['mail'] = addslashes(stripslashes($_POST['mail']));
$_POST['titolo'] = str_replace("<", "&lt;", $_POST['titolo']);
$_POST['titolo'] = str_replace(">", "&gt;", $_POST['titolo']);
$_POST['descrizione'] = str_replace("<", "&lt;", $_POST['descrizione']);
$_POST['descrizione'] = str_replace(">", "&gt;", $_POST['descrizione']);
$_POST['articolo'] = str_replace("<", "&lt;", $_POST['articolo']);
$_POST['articolo'] = str_replace(">", "&gt;", $_POST['articolo']);
$_POST['articolo'] = nl2br($_POST['articolo']);
$_POST['autore'] = str_replace("<", "&lt;", $_POST['autore']);
$_POST['autore'] = str_replace(">", "&gt;", $_POST['autore']);
$db = mysql_connect($db_host, $db_user, $db_password);
if(
$db == FALSE)
die(
"Errore nella connessione. Verificare i parametri 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 = "INSERT INTO articoli (materia, titolo, descrizione, articolo, autore, mail) VALUES ('$_POST['materia']', '$_POST['titolo']', '$_POST['descrizione']', '$_POST['articolo']', '$_POST['autore']', '$_POST['mail']')";
if(
mysql_query($query, $db))
echo 
"L'articolo è stato inserito correttamente";
else
echo 
"Errore durante l'inserimento";
mysql_close($d);
?>
Ho risolte le variabili... ma adesso da un errore di sintassi...

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Programmi\Apache Group\Apache2\public_html\save.php on line 27

Esattamente questa riga:

Codice PHP:
$query = "INSERT INTO articoli (materia, titolo, descrizione, articolo, autore, mail) VALUES ('$_POST['materia']', '$_POST['titolo']', '$_POST['descrizione']', '$_POST['articolo']', '$_POST['autore']', '$_POST['mail']')"; 
Help me...

Grazie

Ultima modifica di ygnoto : 22-07-2005 alle 19:40.
ygnoto è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 22:46   #10
fabio1883
Member
 
Iscritto dal: Jul 2005
Messaggi: 103
Prova a cambiare tutte le righe in questo modo:

$titolo = addslashes(stripslashes($_POST['titolo']));

Nella insert inserisci poi la stringa $titolo, ecc.

Ma prima di fare la INSERT l'hai creata la tabella?

CIAO
fabio1883 è offline   Rispondi citando il messaggio o parte di esso
Old 22-07-2005, 23:36   #11
ygnoto
Bannato
 
L'Avatar di ygnoto
 
Iscritto dal: Jan 2005
Messaggi: 47
Adesso dovrebbe essere tutto corretto...

Ho risolto gran parte dei problemi, adesso il problema... e proprio nell'inserimento dei dati...

Codice PHP:
<?php
include("config.inc.php");
if(
$_POST['pass'] != $password):
echo 
"Password errata";
elseif(
trim($_POST['titolo']) == "" OR trim($_POST['descrizione']) == "" OR trim($_POST['articolo']) == "" OR trim($_POST['autore']) == "" OR trim($_POST['mail']) == ""):
echo 
"Alcuni campi non sono stati compilati!!!";
else:
$_POST['titolo'] = addslashes(stripslashes($_POST['titolo']));
$_POST['descrizione'] = addslashes(stripslashes($_POST['descrizione']));
$_POST['articolo'] = addslashes(stripslashes($_POST['articolo']));
$_POST['autore'] = addslashes(stripslashes($_POST['autore']));
$_POST['mail'] = addslashes(stripslashes($_POST['mail']));
$_POST['titolo'] = str_replace("<", "&lt;", $_POST['titolo']);
$_POST['titolo'] = str_replace(">", "&gt;", $_POST['titolo']);
$_POST['descrizione'] = str_replace("<", "&lt;", $_POST['descrizione']);
$_POST['descrizione'] = str_replace(">", "&gt;", $_POST['descrizione']);
$_POST['articolo'] = str_replace("<", "&lt;", $_POST['articolo']);
$_POST['articolo'] = str_replace(">", "&gt;", $_POST['articolo']);
$_POST['articolo'] = nl2br($_POST['articolo']);
$_POST['autore'] = str_replace("<", "&lt;", $_POST['autore']);
$_POST['autore'] = str_replace(">", "&gt;", $_POST['autore']);
$db = mysql_connect($db_host, $db_user, $db_password);
if(
$db == FALSE)
die(
"Errore nella connessione. Verificare i parametri 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 = "INSERT INTO articoli (materia, titolo, descrizione, articolo, autore, mail) VALUES ('$_POST[materia]','$_POST[titolo]', '$_POST[descrizione]', '$_POST[articolo]', '$_POST[autore]', '$_POST[mail]')";
if(
mysql_query($query, $db))
echo 
"L'articolo è stato inserito correttamente";
else
echo 
"Errore durante l'inserimento";
mysql_close($db); 
endif;
?>
Dà "Errore durante l'inserimento"...

Aiutatemi...
ygnoto è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2005, 00:53   #12
Alvaro Vitali
Member
 
L'Avatar di Alvaro Vitali
 
Iscritto dal: Apr 2005
Messaggi: 224
Prova a stampare il dettaglio dell'errore per saperne di più:

if(mysql_query($query, $db))
echo "L'articolo è stato inserito correttamente";
else
echo 'Errore durante l'inserimento: ' . mysql_error();
Alvaro Vitali è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2005, 23:59   #13
ygnoto
Bannato
 
L'Avatar di ygnoto
 
Iscritto dal: Jan 2005
Messaggi: 47
Quote:
Originariamente inviato da Alvaro Vitali
Prova a stampare il dettaglio dell'errore per saperne di più:

if(mysql_query($query, $db))
echo "L'articolo è stato inserito correttamente";
else
echo 'Errore durante l'inserimento: ' . mysql_error();

Infatti... un errore stupido nel database... la colonna titolo...

Non esisteva ma esisteva quella titlo...

Enjoy
ygnoto è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


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...
CES Unveiled Milan, l'IA diventa tecnologia fondativa e il commercio torna centrale CES Unveiled Milan, l'IA diventa tecnologia fond...
 Recensione OPPO Find X10 Pro Max: un top di gamma completo con tre fotocamere da 200MP Recensione OPPO Find X10 Pro Max: un top di gam...
Warhorse Studios colpita da un grave att...
MX Master 4, arriva l'edizione speciale ...
Kali Linux 2026.3 porta la caccia alle r...
Oracle si affida a OpenAI: ChatGPT e Cod...
Kaspersky punta su IA e servizi gestiti ...
Già sfruttata la falla Brotli che...
Potrebbe essere stato scoperto un nuovo ...
Claude Code, il prompt per scovare telec...
Palit e GALAX smentiscono le voci sulla ...
Fujifilm annuncia la Instax Mini Evo 2, ...
Tailscale chiude le falle SSH verso root...
Il tuo Galaxy laggava nei giochi? Samsun...
Arrivano i nuovi Amazon Echo: prezzi da ...
Il nuovo pickup elettrico Ford può alime...
Opera WebAI: così l'intelligenza artific...
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: 20:35.


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