En fait, si je viens ici, c'est que je n'arrive pas à la faire marcher !
J'ai ma Table1, avec l'index auto_increment et trois champs. J'ai besoin de cet index dans ma Table2.
1) Je fais un SELECT sur table1 avec les valeurs des 3 champs.
2) Si je ne trouve rien, je fais un INSERT sur Table1 avec ces trois champs.
3) Je refais mon SELECT
4) Je récupère mon index et je continue.
Et mon programme se déroule !
Quand j'arrive au bout, ma Table2 est bien remplie, avec des valeurs diverses à la place de l'index.
MAIS quand je regarde ma Table1 avec PHPMySQL, elle est VIDE !!!!!!
Je vous mets mon code, il n'est pas très long...
<?php
define('DOSSIER', '../../');
include DOSSIER.'inc/config_base.php';
include DOSSIER.'inc/dbchoix/dbcommun.php' ;
include DOSSIER."perso.php";
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Language" content="fr">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Echec</title>
</head>
<body>
<?php
$req="select * from acces";
if (!$r = $db->query($req))
{ error($req, __FILE__, __LINE__, $db->error());}
if (!$acces=$db->fetch_assoc($r))
{ // Pas trouvé dans la table des noms !
$db->free_result($r);
exit;
}
while($acces)
{ $reqS="SELECT * FROM acteurs
WHERE Membre=" . $acces["Membre"] . "
AND IP='" . $acces["IP"] . "'
AND AGENT='" . $acces["AGENT"] . "'";
if (!$r1 = $db->query($reqS))
{ if ($db->error()!=" ")
{
error($reqS . " " . $db->error(), __FILE__, __LINE__, $db->error());
}
else
{ // Pas trouvé dans la table des acteurs !
$req="INSERT acteurs (Membre, IP, AGENT)
VALUES (" . $acces["Membre"] . ", '" . $acces["IP"] . "', '" . $acces["AGENT"] . "')";
if (!$db->query($req))
{
error($req, __FILE__, __LINE__, $db->error());
}
//ici, l'acteur doit exister
if (!$r1 = $db->query($reqS))
{
error($reqS, __FILE__, __LINE__, $db->error());
}
if (!$acteur=$db->fetch_assoc($r1))
{
error ("Création d'un acteur impossible", __FILE__, __LINE__, $db->error());
}
}
}
$req="INSERT INTO actions (Acteur, Quand, Fonction)
VALUES (" . $acteur["Numero"] . ", '" . $acces["Jour"] . "', '" . $acces["Fonction"] . "')";
if (!$db->query($req))
{
error($req, __FILE__, __LINE__, $db->error());
}
$acces=$db->fetch_assoc($r);
}
$db->free_result($r);
?>
<p>Opération terminée<br /></p>
<p><a href="../bienvenue.php?nom=Administrateur&prenom=">Retour</a></p>
</body>
</html>
Merci de vos lumières, je suis près de craquer.
AMIcalement.
J'ai ma Table1, avec l'index auto_increment et trois champs. J'ai besoin de cet index dans ma Table2.
1) Je fais un SELECT sur table1 avec les valeurs des 3 champs.
2) Si je ne trouve rien, je fais un INSERT sur Table1 avec ces trois champs.
3) Je refais mon SELECT
4) Je récupère mon index et je continue.
Et mon programme se déroule !
Quand j'arrive au bout, ma Table2 est bien remplie, avec des valeurs diverses à la place de l'index.
MAIS quand je regarde ma Table1 avec PHPMySQL, elle est VIDE !!!!!!
Je vous mets mon code, il n'est pas très long...
<?php
define('DOSSIER', '../../');
include DOSSIER.'inc/config_base.php';
include DOSSIER.'inc/dbchoix/dbcommun.php' ;
include DOSSIER."perso.php";
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Language" content="fr">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Echec</title>
</head>
<body>
<?php
$req="select * from acces";
if (!$r = $db->query($req))
{ error($req, __FILE__, __LINE__, $db->error());}
if (!$acces=$db->fetch_assoc($r))
{ // Pas trouvé dans la table des noms !
$db->free_result($r);
exit;
}
while($acces)
{ $reqS="SELECT * FROM acteurs
WHERE Membre=" . $acces["Membre"] . "
AND IP='" . $acces["IP"] . "'
AND AGENT='" . $acces["AGENT"] . "'";
if (!$r1 = $db->query($reqS))
{ if ($db->error()!=" ")
{
error($reqS . " " . $db->error(), __FILE__, __LINE__, $db->error());
}
else
{ // Pas trouvé dans la table des acteurs !
$req="INSERT acteurs (Membre, IP, AGENT)
VALUES (" . $acces["Membre"] . ", '" . $acces["IP"] . "', '" . $acces["AGENT"] . "')";
if (!$db->query($req))
{
error($req, __FILE__, __LINE__, $db->error());
}
//ici, l'acteur doit exister
if (!$r1 = $db->query($reqS))
{
error($reqS, __FILE__, __LINE__, $db->error());
}
if (!$acteur=$db->fetch_assoc($r1))
{
error ("Création d'un acteur impossible", __FILE__, __LINE__, $db->error());
}
}
}
$req="INSERT INTO actions (Acteur, Quand, Fonction)
VALUES (" . $acteur["Numero"] . ", '" . $acces["Jour"] . "', '" . $acces["Fonction"] . "')";
if (!$db->query($req))
{
error($req, __FILE__, __LINE__, $db->error());
}
$acces=$db->fetch_assoc($r);
}
$db->free_result($r);
?>
<p>Opération terminée<br /></p>
<p><a href="../bienvenue.php?nom=Administrateur&prenom=">Retour</a></p>
</body>
</html>
Merci de vos lumières, je suis près de craquer.
AMIcalement.