Salut,
Un petit tour vite fait des erreurs plus ou moins graves visibles au premier coup d'oeil :
<?php require_once('auth/connexion.php') ?>
<?php
...
?>
S'pa vraiment un erreur mais c'est un peu naze de fermer la pseudo balise php pour la ré-ouvrir juste après. À part surcharger le code ça sert à rien.
//récupération des données entrées par l'utilisateur
$nompar = $_POST['nompar'];
$emailpar = $_POST['emailpar'];
$nom1 = $_POST['nom1'];
$email1 = $_POST['email1'];
$nom2 = $_POST['nom2'];
$email2 = $_POST['email2'];
$nom3 = $_POST['nom3'];
$email3 = $_POST['email3'];
$nom4 = $_POST['nom4'];
$email4 = $_POST['email4'];
$nom5 = $_POST['nom5'];
$email5 = $_POST['email5'];
Ça sert à quoi à part une fois de plus surcharger le code ? $_POST est une variable comme les autres (mis à part le fait qu'elle soit superglobale), tu peux l'utiliser comme les autres. Et en plus en gardant $_POST tu sais d'où provient le contenu lorsque tu l'utilise, c'est plus pratique pour s'y retrouver.
$dbprotect=mysql_pconnect
$dpprotect me semble bien mal choisi comme nom de variable, l'identifiant retourné par mysql_pconnect n'a strictement rien à voir avec une quelconque protection, Ça embrouille plus l'esprit qu'autre chose quand on essaye de lire ton code.
or die()
Beark pour l'utilisateur. Au besoin fait toi une fonction genre my_die qui te permet de logger l'erreur et de rediriger l'utilisateur vers une page d'erreur généraliste. C'est bien plus poli vis à vis des utilisateur et moins dangereux que d'afficher l'erreur.
$date=date("Y-m-d"); // on récupère la date
Encore un truc qui ne sert à rien, en SQL tu as les fonctions NOW() et compagnies qui font tout pour toi et sont bien plus propres et claires.
mysql_close($dbprotect);
Tu viens de perdre tout l'intéret d'une connexion persistante...
$sql="INSERT INTO 'kxpar'( `id_userpar` , `nompar` , `emailpar` , `date` , `nom1`, 'email1', 'nom2', 'email2', 'nom3', 'email3', 'nom4', 'email4', 'nom5', 'email5' ) VALUES ( 'NULL' , '$nompar', '$emailpar', '$date', '$nom1', '$email1', '$nom2', '$email2', '$nom3', '$email3', '$nom4', '$email4', '$nom5', '$email5' );";
Tu ne dois pas mettre le nom de la table entre simples quotes ('kxpar'). Laisse le donc sans rien autour ou bien entre backquotes si tu veux (`kxpar`) mais pas de simple quotes.
Les injection de SQL bon sang ! Utilise mysql_real_escape_string() sur les chaines de caractères pour éviter de te faire exploser ta DB en moins de 2 secondes. Plus d'infos sur ce lien : http://www.php.net/manual/fr/security.database.sql-injection.php