NickoMaiden (Normal User)
Pro
Messaggi: 115
Iscritto: 10/06/2009
|
Questo topic è stato chiuso dal moderatore stavo facendo esperimenti con la creazione di una semplice rubrica. ecco tutto il sorgente:
FILE RUBRICA.PHP
Codice sorgente - presumibilmente PHP |
<html> <body> <form action="lawl.php" method="post"> Nome: <input type="text" name="nome" /> <br>Cognome: <input type="text" name="cognome" /> <br>Numero di tel: <input type="text" name="tel" /> <input type="submit" value="Salva" /> </form> </body> </html> <?php include "stampa.php"; include "connetti_db.php"; loggadb(NULL); //elimina $elimina=$_GET['canc']; if($elimina) { $DBdrop='DELETE FROM mio_database.rubrica WHERE rubrica.ID_RUB='.$elimina; } //fine elimina if($_POST["nome"]==NULL||$_POST["cognome"]==NULL||$_POST["tel"]==NULL) { echo("Tutti i campi sono obbligatori"); stampa(); loggadb("chiudi"); } $nome=$_POST["nome"]; $cognome=$_POST["cognome"]; $tel=$_POST["tel"]; //lista query $DB_crea= " CREATE TABLE IF NOT EXISTS Rubrica ( ID_RUB int(10) AUTO_INCREMENT, nome char(50), cognome char(50) , numero int(15), PRIMARY KEY(ID_RUB) ) "; $DB_aggiungi=" INSERT INTO mio_database.rubrica ( ID_RUB , nome , cognome , numero ) VALUES ( NULL , '".$nome."','".$cognome."','".$tel."' )"; // creo una rubrica. stampa(); loggadb("chiudi"); ?>
|
FILE connetti_db.php
Codice sorgente - presumibilmente Php |
<?php function loggadb($azione) { //dati del database $host="localhost"; $username="root"; $password=""; $nome_db="mio_database"; or die('Impossibile connettersi al database!: ' . msql_error($link)); or die('Database Non Trovato!'); if($azione=="chiudi") } ?>
|
FILE stampa.php
Codice sorgente - presumibilmente Python |
<?php //stampa! function stampa() { $DBnome=mysql_query('SELECT nome FROM mio_database.rubrica'); $DBcognome=mysql_query('SELECT cognome FROM mio_database.rubrica'); $DBtel=mysql_query('SELECT numero FROM mio_database.rubrica'); $DBid=mysql_query('SELECT ID_RUB FROM mio_database.rubrica'); $i=0; if(!mysql_num_rows($DBnome)) die(); echo('<table border="3">'); echo('<tr> <td> NOME </td> <td>COGNOME</td> <td>TELEFONO</td> <td>ELIMINA</td> </tr>'); while($i<mysql_num_rows($DBnome)) { echo ('<tr> <td>'); echo (mysql_result($DBnome, $i).$i); echo ('</td> <td>'); echo (mysql_result($DBcognome, $i).$i); echo ('</td> <td>'); echo (mysql_result($DBtel, $i).$i); echo ('</td> <td>'); echo ('<a href="lawl.php?canc='.mysql_result($DBid, $i).'"><center>x'.$i.'</center></a>'); echo ('</td> </tr>'); $i++; } echo('</table>'); } ?>
|
finchè inserisco campi tutto va bene, dal momento in cui cancello un campo succede il finimondo:
cancello i campi e va tutto bene finchè non ne inserisco uno nuovo!
dal momento che inserisco un nuovo campo si crea una confusione con la chiave primaria che crea problemi quando vado a cancellare un ulteriore campo, ad esempio voglio eliminare il 1° e invece mi elimina il 3°.
se avete tempo di provarlo 5 secondi capirete che è + facile capire il problema che spiegarlo. chi mi dice dove sbaglio?
grazie in anticipo |