Inserimento dei dati automatici mediante numero di tessera.

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
Buongiorno come già avete visto da altri post, sto' creando un sito di fidelity card per la mia attività questa discussione la apro per avere una dritta per sapere come fare per inserire mediante il numero di tessera i punti al cliente; mi spiego meglio:
vorrei creare un file php che mi permette di inserire mediante la tessera da me selezionata i punti al cliente
quindi
creare 2 input 1 chiamato tessera e l'altro chiamato inserisci punti
fin qua ci sono
dopo pero al momento dell'inserimento dati dato invio lo script deve riconoscere la tessera inserita e generare una tabella che mi permetta di visualizzare i punti inseriti

n.b la tabella deve contenere i dati cliente quindi nome cognome, codice fiscale ecc... generati dal numero tessera inserito e logicamente mi dovrà mostrare i punti inseriti.

Grazie mille in anticipo.
 

zorro

Utente Attivo
20 Ott 2014
279
15
18
ROMA
Ciao,
se non ho capito male quello che intendi fare, tu hai una tabella con i dati anagrafici dei clienti e, per ogni cliente, un campo NR_TESSERA, univoco per ogni cliente, e un campo PUNTEGGIO, riportante il punteggio totalizzato fino a quel momento dal cliente. Inserendo il nr di tessera, il programma ti visualizza il nomintivo del cliente più un campo di input che riporta il punteggio attuale del cliente, con la possibità di aggiornarlo. Ho capito bene ??
Se è così, e se mi dai un po' di tempo, faccio qualche prova e ti faccio sapere



Zorro
 
Ultima modifica:

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
Grazie per la risposta Zorro! in pratica proprio oggi ho creato gli input Tessera e inserisci punti, adesso la cosa che vorrei e quella di inserire all'interno degli input il numero tessera e i punti
Es: Tessera n. 100000 - punti. 100 => invio
questa operazione mi deve generare una tabella con:
Nome - Cognome - Data - Tessera - Punti - Totale Punti
Tizio Caio 08/06/2016 100000 20 120

Ecco questo e cio che mi serviva
Comunque gli input li ho gia creati io e il codice php che non so come crearlo
:(:(:(:(:(
 

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
28
Non so se funziona perchè non lo ho testato però te lo posto.
PHP:
<form action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
<b> N° Tessera </b>: <input type="text" name="tessera"/> <br>
<b> Punti:  </b>: <input type="text" name="punti"/> <br>
<input type="submit" value="Invia"/>
</form>

<div>
<?php
if(isset($_POST['tessera'])){
    //qui inserisci la connessione al database
  // e fai la query per selezionare il cliente con questa tessera
?>
<table>
<tr><th>Nome</th>......<th>Tot punti </th> </tr>
<tr><td> <?php echo //Variabile nome_utente?>........ </tr>
</table>
<?php }//fine if
?>
</div>
 

zorro

Utente Attivo
20 Ott 2014
279
15
18
ROMA
Ciao Cris8380,
ti posto il codice: sono 2 pagine, 1 HTML per la creazione del form, e una PHP per la sua gestione e l'update della tabella (ovviamente ho semplificato al massimo le cose, poi dovrai adattarlo alle tue esigenze).
Ho creato una tabelladi prova (CLIENTI) con 4 record e 5 campi per ongi record: ID_CLI, COGNOME, NOME,NR_TESSERA e TOT_PUNTI (i numeri di tessera sono 100, 200, 300 e 400).


HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>FORM</title>
</head>
<body>
<form action="gestisci.php" method="get">
  Inserisci il nr di tessera:
  <input type="text" name="tessera"><br><br><br>
  ......e i punti da aggiungere:
   <input type="text" name="punti"><br><br><br><br><br><br>
  <input type="submit" name="invia" value="Invia i dati">
</form> 
</body>
</html>

..........e la pagina PHP

PHP:
<?php
$nrtess = $_GET['tessera'];
$pti = $_GET['punti'];



//----------LEGGE LA TABELLA---------

//connessione al server DB
$link_connessione=mysql_connect("localhost","...l.","....") or die ("Connessione impossibile");
//Selezione del database
$db=mysql_select_db("........", $link_connessione) or die ("Database inesistente!");
//Visualizzazione dei record di una tabella
$query="SELECT * FROM CLIENTI WHERE NR_TESSERA = $nrtess";
$tabella=mysql_query($query, $link_connessione) or die ("Attenzione: errore nella query");

//Esecuzione della query
while ($riga=mysql_fetch_array($tabella)) {
       $cognome = $riga['COGNOME'];   
       $nome = $riga['NOME'];
       $tessera = $riga['NR_TESSERA'];
       $punti = $riga['TOT_PUNTI'];
       
       $totpti = $punti + $pti;
       
       echo 'Cognome: '.$cognome.'<br>';
       echo 'Nome: '.$nome.'<br>';
       echo 'Tessera nr: '.$tessera.'<br>';
       echo 'Punti attuali: '.$punti.'<br>';
       echo 'Punti da aggiungere: '.$pti.'<br>';
       echo 'Punti totali: '.$totpti;
}


//-------SCRIVE LE MODIFICHE IN TABELLA---------
//Esecuzione della query
$query="UPDATE `CLIENTI` SET `TOT_PUNTI` = '".$totpti."' WHERE NR_TESSERA = '".$tessera."'";
echo '<br><br>';

if (mysql_query($query, $link_connessione)) {
    echo 'il record e\' stato correttamente modificato';
} else {   
    echo 'Attenzione: errore nella query';
}   
?>
.


Puoi vederne il funzionamento anche cliccando qui.
Spero vada bene. Per qualsiasi dubbio..........chieedi pure



Zorro
 

zorro

Utente Attivo
20 Ott 2014
279
15
18
ROMA
P.S. dimenticavo:
il form ti chiede il nr di tessera (100, 200, 300 o 400) e i punti da aggiungere a quell'utente, quindi, una volta inviati i dati, ti dice a chi corrisponde quella tessera, il suo punteggio attuale, i punti da aggiungere, il nuovo punteggio ed infine fa l'update della tabella, sostituendo il vecchio punteggio col nuovo
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
Grazie mille siete fantastici; congratulazioni bellissimo forum.
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
Mi da questo errore Attenzione: errore nella query, Nel mio mysql ho aggiunto Punti e Tot_punti
questo è il risultato dove sbaglio? dovrei aggiungere qualche altra cosa nel DB oltre a Punti e Tot_punti

PHP:
<?php
$nrtess = $_GET['tessera'];
$pti = $_GET['punti'];



//----------LEGGE LA TABELLA---------

//connessione al server DB
$link_connessione=mysql_connect("localhost","TEST","PSW") or die ("Connessione impossibile");
//Selezione del database
$db=mysql_select_db("TEST", $link_connessione) or die ("Database inesistente!");
//Visualizzazione dei record di una tabella
$query="SELECT * FROM Profilo WHERE Tessera = $Tessera";
$tabella=mysql_query($query, $link_connessione) or die ("Attenzione: errore nella query");

//Esecuzione della query
while ($riga=mysql_fetch_array($tabella)) {
       $Cognome = $riga['Cognome'];  
       $Nome = $riga['Nome'];
       $Tessera = $riga['Tessera'];
       $Punti = $riga['Punti'];
       $Tot_punti = $riga['Tot_punti'];
       
       $totpti = $punti + $pti;
       
       echo 'Cognome: '.$cognome.'<br>';
       echo 'Nome: '.$nome.'<br>';
       echo 'Tessera nr: '.$tessera.'<br>';
       echo 'Punti attuali: '.$punti.'<br>';
       echo 'Punti da aggiungere: '.$pti.'<br>';
       echo 'Punti totali: '.$totpti;
}


//-------SCRIVE LE MODIFICHE IN TABELLA---------
//Esecuzione della query
$query="UPDATE `Profilo` SET `Tot_punti` = '".$totpti."' Tessera = '".$Tessera."'";
echo '<br><br>';

if (mysql_query($query, $link_connessione)) {
    echo 'il record e\' stato correttamente modificato';
} else {  
    echo 'Attenzione: errore nella query';
}  
?>
[PHP]
 

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
28
Codice:
$query="SELECT * FROM Profilo WHERE Tessera = $Tessera";
$Tessera chi è? Sostiuiscilo con $nrtess e il nome della tabella controlla che effittavamente inizia con la lettera maiuscola, idem per il campo Tessera.
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
Niente da fare! ho provato a modificare come su descritto ma mi appare sempre lo stesso errore.
ho solamente aggiunto nella tabella Profilo la quale è scritta con prima lettera maiuscola (Tot_punti e Punti)
Forse sto sbagliando io boooo sto impazzendo aiutatemi
 

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
28
Codice:
$tabella=mysql_query($query, $link_connessione)
va messo prima la connessione. Poi non utilizzare le funzioni mysql poichè in php7 sono state rimosse. Usa mysqli
Codice:
$tabella=mysqli_query($link_connessione, $query)
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
ecco uno screanshot del db
Immagine.jpg
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
ok Zorro, cio che volevo dirti e questo: io ho gia una tabella che richiama un'altro script e sarebbe Profilo, io adesso in profilo dovrei lavorare per richiamare lo script che mi hai postato.
se creassi una nuova tabella CLIENTI e inserire solo ID_CLI, COGNOME, NOME, NR_TESSERA e TOT_PUNTI, non mi riconoscerebbe i clienti gia inseriti nella tabella Profilo come da immagine postata
 

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
28
Se leggi il mio post sopra lo screen del DB ti dovrebbe funzionare. Ribadisco che non devi usare le funzioni mysql pichè sono state eliminate nella versione PHP7, quindi utilizza mysqli
 

zorro

Utente Attivo
20 Ott 2014
279
15
18
ROMA
il nr di tessera è memorizzato nella variabile $nrtess (e non $Tessera) q1indi finchè non lo sostituirai nella query, ti darà sempre errore
 

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
28
@zorro lo ha sostiuito ha scritto. Lui ha sbagliato a passare i parametri alla funzione mysql_query(). Ha passato prima la query e poi la connessione, invece di passare prima la connessione e poi la query
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
Ibernato aggiungendo mysqli non funzionava, adesso funziona ma quando carico i punti mi appare 'il record e' stato correttamente modificato' ho inserito nella tabella Profilo ID_CLI, COGNOME, NOME, NR_TESSERA e TOT_PUNTI, ma , non esce i dati del cliente della tessera come nell'esempio di @zorro
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
Ragazziiiiii un bacione a tutti e due se non fosse stato per @zorro e @Ibernato non ci sarei riuscito funziona tutto correttamente....
 

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
28
@Cris non ti funzionava perchè per fare la connessione non hai utilizzato mysqli. Comunque usa mysqli come ti ho detto perchè mysql sono state eliminate in PHP7. Informati anche su internet =)
@zorro modera i termini ;)
 

cris8380

Moderatore
Membro dello Staff
MOD
3 Giu 2016
261
14
18
38
@Ibernato ascolta io non ho usato mysqli forse hai ragione tu che bisogna mettere mysqli ma ti dico che non funzionava adesso funziona con mysql. sono felice che funzione pero' non ci accendiamo per queste cose ognuno usa cio che vuole.. grazie ancora ragazzi
 
Discussioni simili
Autore Titolo Forum Risposte Data
asevenx errore con l'inserimento dei dati nel database, campi vuoti Classic ASP 1
max1850 Inserimento del punto e dei decimali Classic ASP 2
L inserimento form dati multipli ? PHP 0
G Appicazione HTML per inserimento dai in Database Access Microsoft HTML e CSS 0
J Form inserimento dati in database Ajax 1
D modificare questo codice per inserimento in text e non in tabella jQuery 1
R [C#] Automatizzare un inserimento di un Post su un Gruppo Facebook .NET Framework 0
M Aiuto con inserimento immagini WordPress 6
elpirata Impedire inserimento data di oggi e date passate jQuery 39
A Inserimento dati nel database tramite form + altre operazioni PHP 18
W Email conferma inserimento Classic ASP 0
S Inserimento multiplo non richiesto PHP 2
P inserimento icone social tramite html HTML e CSS 1
L form multipla php sql,errore in inserimento MySQL 0
Alex_70 Inserimento dati a cascata PHP 204
T Da xsd a xml ed inserimento dati in excel XML 0
M Problema inserimento parole con apostrofo nel db PHP 5
C [RISOLTO]Inserimento variabile php in input html PHP 20
P Access Inserimento data. MS Access 4
L Inserimento dettagli in una maglia Photoshop 2
S [PHP] email con inserimento dati nel database PHP 23
beatle [Photoshop] problema inserimento immagini Photoshop 1
G [Javascript] Errore inserimento dati Backend Node.js e workbench Javascript 1
B [PHP] Creare PDF dopo inserimento dati form PHP 4
C [PHP] Form con Inserimento dati dalla maschera e un menù a discesa che prende i dati dal db PHP 1
C [PHP] Form inserimento più menù a discesa PHP 9
M [PHP] Problemi su inserimento array nel db PHP 7
gandalf1959 [PHP] Inserimento di più righe non funziona come mi aspetto... PHP 2
E Inserimento dati da PHP in tabella MySQL PHP 5
E Form inserimento dati con JavaScript Javascript 0
D [MS Access] problemi con inserimento campo in una maschera MS Access 6
G inserimento csv in tabella mysql; problema con struttura PHP 11
M [Joomla] Inserimento wow.js in template Joomla 4
K [PHP] Inserimento dati database con postgres PHP 2
K [PHP + MYSQL ] Inserimento dati in database da form dinamico PHP 13
A [PHP] Inserimento url dinamici in pagina html PHP 3
spider81man [PHP] Alert Box per confermare Inserimento o Cancellazione dato. PHP 4
gandalf1959 [MySQL] Inserimento multiplo da form multirighe MySQL 22
A [RISOLTO]Inserimento Immagini da pc a MySql PHP 15
M Inserimento dati checkbox multipli in db da ajax a php PHP 1
S [PHP] inserimento su DB da tabella PHP 29
P [PHP] Problema inserimento nuove chiavi in array PHP 2
paloppa Inserimento data su database MYSQL PHP 2
webimage [PHP] Non inserimento in tabella PHP 19
N [Java] codice per inserimento sql Java 0
T [HTML] inserimento nav HTML e CSS 8
G [HTML] Problemi con inserimento immagini HTML e CSS 7
C [HTML] Inserimento feed/rss di Mr.Webmaster sul proprio sito HTML e CSS 1
M Inserimento Array prelevato da Database in Php in un altra tabella mysql PHP 0
M [PHP] Controllo inserimento in tempo reale PHP 0

Discussioni simili