Si. Ho corretto l'errore. C'era un " var_dump($query); " di troppo.
Posto tutto il codice perfettamente funzionante con alcune modifiche e spiegazioni per renderlo ancora più chiaro e utilizzabile da tutti.
1) file database.php
<?php
if (!isset($_SESSION)) {
session_start();
}
// parametri del database
$db_host = "localhost";
$db_user = "root";
$db_password = "";
$db_name = "prova";
?>
2) SQL per creare il database di esempio:
CREATE TABLE `prodotti` (
`id` int(11) NOT NULL auto_increment,
`nome` varchar(20) default NULL,
`descrizione` varchar(100) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
3) file per il form - form.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento senza titolo</title>
</head>
<body>
<p>inserimento di massa</p>
<form id="form1" name="form1" method="post" action="inserisci.php">
<label>inserisci il Testo:<br />
<textarea name="textfield" cols="100" rows="10"></textarea>
</label>
<p>ATTENZIONE: PRIMA DI CLICCARE CONTROLLA ACCURATAMENTE IL TESTO, SE NO FAI UN GRAN CASINO NEL DATABASE!!</p>
<p>
<label>
<input type="submit" name="Submit" value="INSERIRE I DATI NEL DATABASE" />
</label>
</p>
</form>
<p> </p>
</body>
</html>
4) file per l'inserimento dei dati - inserisci.php
<?php
//Script realizzato da "Borgo italia" sul forum
www.mrwebmaster.it
if (!isset($_SESSION)) {session_start();}
//inserire l'eventuale codice per limitare l'accesso a chi non è autorizzato
require_once('database.php'); //collegamento al file che contiene i dati necessari per la connessione al database.
$db = mysql_connect($db_host, $db_user, $db_password);
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database.");
//richiamo e creo la variabile $testo dal form.
if(isset($_POST['Submit']) && $_POST['Submit']=="INSERIRE I DATI NEL DATABASE" )
{
$testo=$_POST['textfield'];// leggo il testo dal form
//la variabile $testo puo venire da un form o dalla lettura di un file.txt. (in questo caso proviene da form)
$record=explode('|',$testo);//divido i record
foreach($record as $value)
{//comincio a ciclare i record
$campo=explode('*', $value); //suddivido il record in campi
//verifico se il record esiste
$esiste=mysql_num_rows(mysql_query("SELECT * FROM prodotti WHERE nome='$campo[0]' AND descrizione='$campo[1]'"));
if($esiste == 0)
{//non esiste e quindi inserisco
//devo trimmare i valori
$campo[0]=trim($campo[0]);
$campo[1]=trim($campo[1]);
$query="INSERT INTO prodotti(nome,descrizione) VALUES('$campo[0]', '$campo[1]')";
mysql_query($query) or die (mysql_error());
// Stampo a video la conferma dei dati inseriti nel database
echo "+ + + Inserimento di <strong>$campo[0] </strong> OK + + + <br> ";
}//fine if esiste
else {echo "- - - Inserimento di <em>$campo[0]</em> saltato perchè già esiste nel database - - - <br>";}}//fine forech
}
else {echo "Ops!! C'è qualcosa che non và tra il file del Form e il file inserisci.php. Controlla i due file.<br>";
}
?>
Fine. :ilpirata:
Un grazie particolare a Borgo Italia:tifoso: e anche a Eliox !
Notte!