- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- Php-mysql salvataggio dati
-
Php-mysql salvataggio dati
Auguri a tutti,
ho questo script di salvataggio dati che spesso pur visualizzandomi che l'operazione si è conclusa correttamente, non mi salva i dati.
siccome non lo fa sempre non sono capace di rilevare l'errore.
Mi potete dire cosa c'è di sbagliato nello script sottoriportato?
Grazie[php]
<?php
session_start();
include_once("./inc/config.php");
$user=strtolower($_SESSION['username']);
$id=$_SESSION['id_socio'];
if (isset($_POST) && $id !=0)
{
$id=$_SESSION['id_socio'];
$giorno=$_POST['giorno'];
$mese=$_POST['mese'];
$anno=$_POST['anno'];
//$data=$anno+$mese+$giorno;
$data=mktime(0,0,0,$mese,$giorno,$anno);
$causale=$_POST['causale'];
$descrizione=$_POST['descrizione'];
$importo=$_POST['importo'];// connessione al database $db=mysql_connect($db_host,$db_user,$db_pass); if ($db==false) die("Errore nella connessione. Verificare i parametri nel file ./inc/config.php"); // seleziona database mysql_select_db($db_name, $db) or die("Errore nella selezione del database. Verificare i parametri nel file ./inc/config.php"); // costruzione query $query="INSERT INTO `pagamenti` (username, id_socio, data, causale, descrizione, importo)VALUES ('$user','$_SESSION[id_socio]','$data','$causale','$descrizione','$importo')"; $risultato=mysql_query($query,$db); //mysql_close($db); Echo "<meta http-equiv=\"Refresh\" content=\"1; URL=index.php\">Operazione registrata correttamente!"; }
?>
[/php]
-
Ciao francodace,
A primo impatto, direi che il problema può essere dato dalla configurazione del php.ini
Se hai i magic_quotes su off e invii dal modulo frasi contenenti ' puoi modificare la query eseguita generando errori.
Dovresti usare la funzione addslashes se i magic_quotes sono ad off.
-
Grazie the..,
forse ho omesso un particolare, lo script lo eseguo direttamente online, per controllare il php.ini come devo fare?
Per maggior precisazione: uso questo script per aggiornare i versamenti dei soci e nonostante non smetto gli aggiornamenti, a volte anche per ore, mi succede che spesso mi scade la sessione 'username'.
Mi sono accorto di ciò perche nelle righe del db spesso questo campo risulta vuoto.
Sembra che ha volte mi scrive sul db normalmente,
a volte mi scrive sul db senza username e a volte non mi scrive nulla sul db.
Rare volte esce addirittura dal login.
Aiutami
-
Ciao francodace,
Le sessioni di default durano 27 minuti, allora scadere ovviamente sei sloggato. Il php.ini su un hosting condiviso solitamente non puoi modificarlo.
Ci sono funzioni per modificare i valori, ma anche queste spesso sono disattivate su hosting condivisi...
Se i login ti servono per molto tempo, devi utilizzare i cookie, con tutti gli accorgimenti del caso per evitare che qualcuno modifichi i cookie...
-
Siccome gli inserimenti li facciamo solo in due, ognuno da casa propria, e uno dei due sono io, mi consiglieresti un buon metodo per ovviare a ciò?
Grazie
-
Ciao francodace,
Usa i cookie invece delle sessioni, in modo che dopo 27 minuti non scade.
-
mi potresti fare un esempio con i cookie? non li ho ancora usati.
-
Ciao,
Eccoti dei link utili:
allwebfree.it/php_cookie.php
allwebfree.it/php_cookie_funzioni.php
giorgiotave.it/guida_php/cookie.php
-
grazie
ciao