Salut,
Alors comme je suis un gentil méconnu

, voici un exemple de script.
Le fichier qui va te permettre d'encoder tes articles.
Et je me suis vraiment casser la tête

pour lui trouver un nom.
encodage.php
<?php
// se connecter et sélectionner la base
$connexion = mysql_connect("localhost","","");
//$connexion = mysql_connect();
$ok = mysql_select_db("testphpfrance",$connexion);
// traitement du formulaire
if (isSet($_POST["OK"])) {
//--> récupérer le tableau contenant la saisie
$lignes = $_POST["saisie"];
foreach($lignes as $identifiant => $ligne) {
// nettoyage de la saisie
$libelle = $ligne["libelle"];
$prix = $ligne["prix"];
$prix = str_replace(",",".",$prix); //--> Remplace la , par un .
$prix = str_replace(" ","",$prix); //--> supprime les espaces
// Attention à ce niveau, il faudrait vérifier la saisie des données.--//
$requete = "";
if ($identifiant < 0 and $libelle.$prix != "") {
// identifiant négatif et quelque chose de saisi
// = création = INSERT
$requete = "INSERT INTO articles(libelle,prix)
VALUES('" . $libelle . "','" . $prix . "')";
} elseif (isSet($ligne["supprimer"])) {
// case « supprimer » cochée = suppression = DELETE
$requete = "DELETE FROM articles
WHERE id = '" .$identifiant. "'";
} elseif (isSet($ligne["modifier"])) {
// zone « modifier » TRUE (1) = modification = UPDATE
$requete = "UPDATE
articles
SET
libelle = '" .$libelle. "',
prix = '" .$prix. "'
WHERE
id = '" .$identifiant."'";
}
// si une requête a été déterminée, l'exécuter.--//
if ($requete != "") {
mysql_query($requete);
//--> A ce niveau, il faudrait tester les erreurs ...--//
}
}
}
//-->Recherche les articles éventuelle.--//
$requete = "SELECT * FROM articles";
$resultat = mysql_query($requete);
// à ce niveau, il faudrait tester les erreurs ...
// Affichage de la page ...
?>
<HTML>
<HEAD><TITLE>Gestion des articles</TITLE></HEAD>
<BODY>
<!-- construction d'une table HTML à l'intérieur d'un formulaire -->
<FORM NAME="formulaire" METHOD="post">
<TABLE BORDER="1" CELLPADDING="4" CELLSPACING="0">
<!-- ligne de titre -->
<TR ALIGN=\"center\">
<TH>Id</TH><TH>Libellé</TH><TH>Prix</TH><TH>Supprimer</TH>
</TR>
<!-- code PHP pour les lignes du tableau -->
<?php
if ($resultat) // s'il y a un résultat à afficher
{
// initialisation d'un compteur de ligne
$i = 0;
// boucle de fetch
while ($article = mysql_fetch_assoc($resultat))
{
// incrémentation du compteur de ligne
$i++;
// calcul du numéro d'ordre dans le formulaire de la
// zone cachée correspondant à l'identifiant
$n = 4 * ($i - 1); // -1 puisque commence à 0 et pas à 1
// mise en forme des données
$article["prix"] = number_format($article["prix"],2,"," ," ");
// génération de la ligne de la table HTML
// insertion des balises INPUT du formulaire
printf(
"<TR><TD>%s</TD><TD>%s</TD><TD>%s</TD><TD>%s</TD></TR>",
"$article[id]
<INPUT TYPE=\"hidden\"
NAME=\"saisie[$article[id]][modifier]\">",
"<INPUT TYPE=\"text\"
NAME=\"saisie[$article[id]][libelle]\"
VALUE=\"$article[libelle]\"
onChange=\"document.formulaire[$n].value=1\">",
"<INPUT TYPE=\"text\"
NAME=\"saisie[$article[id]][prix]\"
VALUE=\"$article[prix]\"
onChange=\"document.formulaire[$n].value=1\">",
"<INPUT TYPE=\"checkbox\"
NAME=\"saisie[$article[id]][supprimer]\"
VALUE=\"$article[id]\">");
} // fin while
//-->Ajout de 5 lignes vides pour la création.--//
//-->Sans identifiant, sans case de suppression.--//
for($i=1; $i<=5; $i++)
{
printf(
"<TR><TD>%s</TD><TD>%s</TD><TD>%s</TD><TD>%s</TD></TR>",
"",
"<INPUT TYPE=\"text\"
NAME=\"saisie[-$i][libelle]\"
VALUE=\"\">",
"<INPUT TYPE=\"text\"
NAME=\"saisie[-$i][prix]\"
VALUE=\"\">",
"");
} // fin for
}//fin if ($resultat).
?>
</TABLE>
<BR><INPUT TYPE="submit" NAME="OK" VALUE="Enregistrer">
</FORM>
</BODY>
</HTML>
Affichage.php
<?php
//-->initialiser la variable de message.--//
$message = "";
///-->se connecter et sélectionner la base (erreurs à traiter).--//
$connexion = mysql_connect("localhost","","");
$ok = mysql_select_db("testphpfrance",$connexion);
//--> exécuter la requête de sélection
$requete = "SELECT * FROM articles";
$resultat = mysql_query($requete);
//--> tester le résultat
if (! $resultat) { // requête pas OK
// message d'erreur
$message .= "Erreur.\n";
}
//-->Affichage de la page ...
?>
<HTML>
<HEAD><TITLE>Liste des articles</TITLE></HEAD>
<BODY>
<!-- construction d'une table HTML -->
<TABLE BORDER="1" CELLPADDING="4" CELLSPACING="0">
<!-- ligne de titre -->
<TR ALIGN=\"center\">
<TH>Id</TH><TH>Libellé</TH><TH>Prix</TH>
</TR>
<!-- code PHP pour les lignes du tableau -->
<?php
if ($resultat) { //--> Si il y a un résultat à afficher.--//
// boucle de fetch
while ($article = mysql_fetch_assoc($resultat)) {
//--> mise en forme des données.--//
///$article["libelle"] = vers_page($article ["libelle"]);
$article["prix"] = number_format($article["prix"],2,"," ," ");
// génération de la ligne de la table HTML
printf("<TR><TD>%d</TD><TD>%s</TD><TD>%s</TD></TR>",
$article["id"],
$article["libelle"],
$article["prix"]);
} //--> fin while
//--> si le résultat est vide, préparer un message
if (mysql_num_rows($resultat) == 0) {
$message = "Aucun article dans la base.";
}
} //--> fin if ($résultat)
?>
</TABLE>
<FONT COLOR="red"><?php echo $message; ?></FONT>
</BODY>
</HTML>
Et ici la TABLE qui ma servi aux test.
-- phpMyAdmin SQL Dump
-- version 3.1.3
-- http://www.phpmyadmin.net
--
-- Serveur: localhost
-- Généré le : Jeu 25 Juin 2009 à 23:27
-- Version du serveur: 5.1.32
-- Version de PHP: 5.2.9-2
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- Base de données: `testphpfrance`
--
-- --------------------------------------------------------
--
-- Structure de la table `articles`
--
CREATE TABLE IF NOT EXISTS `articles` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`libelle` varchar(40) NOT NULL,
`prix` float NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;
--
-- Contenu de la table `articles`
--
INSERT INTO `articles` (`id`, `libelle`, `prix`) VALUES
(1, 'PHP avancer', 35.5),
(2, 'MySQL avancer', 48.9),
(3, 'PHP débutant', 29.95),
(5, 'PHP & MySQL', 54.75);
Donc en gros tu encode tes articles ou tu les supprime puis tu affiche.
C'est une piste à toi de l'adapter et de rajouter l'upload d'image.