Lanciare alert se il codice fiscale è già presente nel db e lasciare la scelta di inserire all'utente

bubino8

Utente Attivo
28 Apr 2017
343
19
18
27
BZ
Si esattamente cosi ;)


mmm..... bella domanda questa dipende come stai facendo gli INPUT e le SELECT.


IMPORTANTE!!
prima di fare tutto consiglio un bel BACKUP generale di tutto.

Fai delle prove e tienimi aggiornato.
 

Max61

Utente Attivo
2 Mar 2014
674
3
18
Si esattamente cosi ;)




mmm..... bella domanda questa dipende come stai facendo gli INPUT e le SELECT.


IMPORTANTE!!
prima di fare tutto consiglio un bel BACKUP generale di tutto.

Fai delle prove e tienimi aggiornato.
Ok. Domani ci provo e ti faccio sapere. Sicuramente visto la mia inesperienza avrò bisogno del tuo aiuto.
Grazie
Ciao
 

bubino8

Utente Attivo
28 Apr 2017
343
19
18
27
BZ
figurati importate è sempre fare backup primi di apportare qualunque modifica.

tu fai le tue prove poi nel caso mi trovi qua

Ciao
 

Max61

Utente Attivo
2 Mar 2014
674
3
18
Buongiorno, come ti avevo preannunciato eccomi qua...
ti allego le due tabelle perchè come autoinc ne posso mettere uno solo...
dimmi dove sbaglio, nella tabella sinistri l'ho messo ma non autoinc
grazie per la pazienza
 

Allegati

bubino8

Utente Attivo
28 Apr 2017
343
19
18
27
BZ
Ciao Buongiorno,

Si le tabelle sono corrette cosi.

Tu in tblsinistri hai aggiunto "id_cliente" o "tblanagrafica_id" perchè presumo servano a fare la stessa cosa.

Comunque ora sistemati il form per inserire l'id del cliente sistema la query di INPUT e fai delle prove.
 

Max61

Utente Attivo
2 Mar 2014
674
3
18
tblanagrafica_id, questo campo era già presente nella tabella e prende lo stesso numero dell'idanagrafica quindi devo far riferimento a quello e togliere id_cliente che ho aggiunto adesso?
 

Max61

Utente Attivo
2 Mar 2014
674
3
18
Ciao...sono una schiappa, ma non riesco ad intercettare il valore dell'anagrafica_id già presente nella tabella sinistri e quella che sto inserendo
PHP:
$query="SELECT * FROM tblsinistri WHERE tblsinistri.tblanagrafica_id = 'tblanagrafica.tblanagrafica_id'";
 

bubino8

Utente Attivo
28 Apr 2017
343
19
18
27
BZ
in questo modo hai creato una variabile, mi manderesti una porzione piu lunga della tua pagina?

magari riesco ad aiutarti meglio.
 

Max61

Utente Attivo
2 Mar 2014
674
3
18
in questo modo hai creato una variabile, mi manderesti una porzione piu lunga della tua pagina?

magari riesco ad aiutarti meglio.
In questo modo sono riuscito ad intercettare il valore dell'idanagrafica della tabella anagrafica che è uguale a tblanagrafica_id della tabella tblsinistri
PHP:
SELECT * FROM tblanagrafica, tblsinistri WHERE tblanagrafica.idanagrafica = tblsinistri.tblanagrafica_id AND tblanagrafica.CodiceFiscale= '".$CodiceFiscale."'
Allego codice completo relativo al controllo e inserimento
PHP:
//legge ANAGRAFICA per controllare che non sia già presente
    //connessione al server DB
    $myconn=mysql_connect("localhost", "utente", "pw") or die ("Connessione impossibile");
    //Selezione del database
    require "Connessione.php";
    $db=mysql_select_db("gestionesinistri", $myconn) or die ("Database inesistente!");
    //Visualizzazione dei record di una tabella
    $query="SELECT COUNT(*) as tot FROM tblanagrafica WHERE CodiceFiscale = '".$CodiceFiscale."'";
    $tabella=mysql_query($query, $myconn) or die ("Attenzione: errore nella query 1");
    //Esecuzione della query
    $row=mysql_fetch_assoc($tabella);

    $righetot=$row['tot'];
   

   if ($righetot == 0) {
       $query="INSERT INTO gestionesinistri.tblanagrafica (idanagrafica,Nominativo,CodiceFiscale,Indirizzo,Residenza,TelefonoFisso,Cellulare,Mail)
        VALUES ('','$Nominativo','$CodiceFiscale','$Indirizzo','$Residenza','$TelefonoFisso','$Cellulare','$Mail')";
       
       mysql_query($query, $myconn) or die ("Attenzione: errore nella query 2");
  }
 
   $query="SELECT * FROM tblanagrafica WHERE CodiceFiscale = '".$CodiceFiscale."'";

   $tabella=mysql_query($query, $myconn) or die ("Attenzione: errore nella query 3");
   //Esecuzione della query
   $riga=mysql_fetch_array($tabella);
       
  $idut=$riga['idanagrafica'];
 
   $Pratica_control = mysql_query("SELECT * FROM tblsinistri WHERE NumPratica = '".$NumPratica."' AND AnnoSinistro = '".$AnnoSinistro."'");
if(mysql_num_rows($Pratica_control)) {
}
    if (mysql_result($Pratica_control, 0) > 0) {
        //die('Hai già inserito questo record.');
        echo "<br><br><b><span style=\"color:blue\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<span style=\"color:red; font-size: 14pt\">Attenzione, la pratica digitata: <span style=\"color:blue\"><br><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Numero:&nbsp;&nbsp;". $NumPratica ." relativa all'anno ".$AnnoSinistro."<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<span style=\"color:red; font-size: 14pt\"> risulta in lavorazione!
<hr />
<span style=\"color:red; font-size: 14pt\">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<span style=\"color:red; font-size: 14pt\">Correggi la digitazione...&nbsp;&nbsp;<input style='color:black' type='button' value='    Back     ' onclick='history.go(-1);return true;'></form><br><br>";
exit;
   }
    elseif (mysql_result($query, 0) == 0) {
        //die('Hai già inserito questo record.');
    }
//FINE VERIFICA SE IL RECORD E' PRESENTE NEL DB  

  //NUOVA QUERY CHE INTERCETTA IL VOLORE DELL'ID PRESENTE
    $query = mysql_query("SELECT * FROM tblanagrafica, tblsinistri WHERE tblanagrafica.idanagrafica = tblsinistri.tblanagrafica_id AND tblanagrafica.CodiceFiscale= '".$CodiceFiscale."'");
    $result = mysql_fetch_assoc($query);

if($result) {
  echo 'id: ', $result['tblanagrafica_id'];
} else {
  echo 'id non trovato nel database';
  echo $result;
}
//FINE QUERY CHE INTERCETTA IL VOLORE DELL'ID PRESENTE

  $query="INSERT INTO gestionesinistri.tblsinistri (idsinistri,tblanagrafica_id,Nominativo,CodiceFiscale,NumPratica,AnnoSinistro,ProtArrivo)
          VALUES ('','$idut','$Nominativo','$CodiceFiscale','$NumPratica','$AnnoSinistro','$ProtArrivo')";
  mysql_query($query, $myconn) or die ("&nbsp;<br><br><left><b><span style=\"color:red; font-size: 14pt \"><span style=\"color:blue height:1;width:1; background-color:white\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Attenzione: questo codice fiscale risulta presente in archvio...controlla la digitazione!!!
      <input type=\"button\" value=\" Correggi \" onclick=\"history.back(1)\"></left>");
 
  $idut=$riga['idanagrafica'];

  $query="INSERT INTO gestionesinistri.tblverbali (idverbali,tblanagrafica_id,Nominativo,CodiceFiscale,NumPratica,AnnoSinistro,ProtArrivo)
          VALUES ('','$idut','$Nominativo','$CodiceFiscale','$NumPratica','$AnnoSinistro','$ProtArrivo')";
  mysql_query($query, $myconn) or die ("Attenzione: errore nella query 4");

  header('location:../views/VisualizzaSinistro_Insert.php');//reindirizza alla pag
 

bubino8

Utente Attivo
28 Apr 2017
343
19
18
27
BZ
Aspetta scusa allora adesso quando inserisci un nuovo sinistro riesci ad inserire correttamente anche idanagrafica corretto??



Ora cosa devi fare?? delle query per recuperare cosa?
 

Max61

Utente Attivo
2 Mar 2014
674
3
18
Aspetta scusa allora adesso quando inserisci un nuovo sinistro riesci ad inserire correttamente anche idanagrafica corretto??



Ora cosa devi fare?? delle query per recuperare cosa?
Aspetta scusa allora adesso quando inserisci un nuovo sinistro riesci ad inserire correttamente anche idanagrafica corretto??
Ora cosa devi fare?? delle query per recuperare cosa?
Si inserisco idanagrafica nella tabella anagrafica e lo stesso valore lo passo a tblanagrafica_id nella tabella tblsinistri.
Ora cosa devi fare?? Si perchè così facendo non è cambiato niente, se è uguale lo inserisce soltanto nella tabella sinistri e se è diverso in tutte e due, come prima con il CF.
Probabilmente mi sono perso nel ragionamento
 

bubino8

Utente Attivo
28 Apr 2017
343
19
18
27
BZ
Da come scrivi mi sebra che tu hai un form che compilato andra a creare sia il sinistro che il cliente...Giusto?
Se è cosi non va più bene.
Farai:
x1 Form per inseriri il clienti in tblanagrafica - dove inserirai nome, cognome, cf, indirizzo, ecc
x1 Form per inserire i sinistri in tblsinistri - dove inserirai idanagrafica, sinistro, data, ecc


Comunque mi sto facendo un idea del tuo sistema e più ci penso più mi sembra di capire che era già impostato correttamente, ed era solo da sistemare il modo di inserimento e recupero delle informazioni.
 

Max61

Utente Attivo
2 Mar 2014
674
3
18
Da come scrivi mi sebra che tu hai un form che compilato andra a creare sia il sinistro che il cliente...Giusto?
Se è cosi non va più bene.
Farai:
x1 Form per inseriri il clienti in tblanagrafica - dove inserirai nome, cognome, cf, indirizzo, ecc
x1 Form per inserire i sinistri in tblsinistri - dove inserirai idanagrafica, sinistro, data, ecc


Comunque mi sto facendo un idea del tuo sistema e più ci penso più mi sembra di capire che era già impostato correttamente, ed era solo da sistemare il modo di inserimento e recupero delle informazioni.
Da come scrivi mi sebra che tu hai un form che compilato andra a creare sia il sinistro che il cliente...Giusto?
Si crea un record nella tabella anagrafica e uno nella tabella sinistri ed un altro ancora nella tabella verbali che finora ho omesso.
Secondo me basterebbe un alert di controllo al momento che viene inserito il nuovo record, ma soltanto se il codice fiscale o l'idanagrafica è lo stesso, se diverso fa l'insert senza alert.
Oppure come dici te devo fare due form indipendenti dove prima inserisco la persona e successivamente vado ad inserire il sinistro recuperando i dati dalla tabella anagrafica incrementando la tabella sinistri di un record?
Se è possibile mi piacerebbe l'alert...
ma ci vuole java e non lo so fare
 
Ultima modifica:

bubino8

Utente Attivo
28 Apr 2017
343
19
18
27
BZ
Allora qua dipende da come voui gestire te il tuo sistema.

Personalmente se devo inserire un sinistro significa che prima di fare cio la persona è già mio cliente, di conseguenza l'ho già inserito precedentemente nella mia tabella anagrafica.
Al momento dell'inserimento del sinistro non devo andare in nessun modo a creare un record o incrementare qualcosa all'interno di tblanagrafica.


A questo punto farei nel form sinistri un campo codice cliente (che sarà id_anagrafica) e un campo CF
Da come scrivi mi sebra che tu hai un form che compilato andra a creare sia il sinistro che il cliente...Giusto?
Si crea un record nella tabella anagrafica e uno nella tabella sinistri ed un altro ancora nella tabella verbali che finora ho omesso.
Secondo me basterebbe un alert di controllo al momento che viene inserito il nuovo record, ma soltanto se il codice fiscale o l'idanagrafica è lo stesso, se diverso fa l'insert senza alert.
Oppure come dici te devo fare due form indipendenti dove prima inserisco la persona e successivamente vado ad inserire il sinistro recuperando i dati dalla tabella anagrafica incrementando la tabella sinistri di un record?
Se è possibile mi piacerebbe l'alert...
ma ci vuole java e non lo so fare

Come hai scritto qua appena crei il sinistro fai controllo su id_anagrafica(che può diventare una sorta di tuo codicecliente) e sul CF.
Se questi due non corrispondono fai un alert dove ti avvisa che quel CF appartiene ad un altro Cliente.
 

Max61

Utente Attivo
2 Mar 2014
674
3
18
Allora qua dipende da come voui gestire te il tuo sistema.

Personalmente se devo inserire un sinistro significa che prima di fare cio la persona è già mio cliente, di conseguenza l'ho già inserito precedentemente nella mia tabella anagrafica.
Al momento dell'inserimento del sinistro non devo andare in nessun modo a creare un record o incrementare qualcosa all'interno di tblanagrafica.


A questo punto farei nel form sinistri un campo codice cliente (che sarà id_anagrafica) e un campo CF



Come hai scritto qua appena crei il sinistro fai controllo su id_anagrafica(che può diventare una sorta di tuo codicecliente) e sul CF.
Se questi due non corrispondono fai un alert dove ti avvisa che quel CF appartiene ad un altro Cliente.
Si però mi serve un alert che mi dia la possibilità di inserire il record quando è un nuovo sinistro relativo ad un utente già presente nel db. In rete ho trovato qualche esempio ma non mi va a leggere nel db per vedere se c'è già quello& id, ma semplicemente inserisce o non inserisce
 

bubino8

Utente Attivo
28 Apr 2017
343
19
18
27
BZ
per fare un controllo prima di eseguire la query devi andare a lavorare un po in javascript e ajax per farlo in background prima di inviare il form.
 

bubino8

Utente Attivo
28 Apr 2017
343
19
18
27
BZ
e purtroppo con le mie competenze cosi a voce non riesco ad aiutarti, dovrei avere file e db sott'occhio