Vous n'êtes pas identifié.
Merci, 
je re le plus vite possible
J'espère car c'est un peu urgent pour moi.
Hors ligne
Voila le code.
Tu es mon béta testeur
Apres que tu me l'ai commenté, je le mettrais sur le portail
Donc cela gère :
Ajout / Modifier / Supprimer
Je n'ai pas repris le nom de tes variables, j'ai voulu faire un code plus commun pour que tout le monde puisse l'aborder facilement.
Tu peux facilement modifier le nom des variables à ta sauce mais essaye de garder des préfixes aux variables pour éviter de polluer ton espace de code.
A t'entendre
<?php
/*
CREATE TABLE articles (
id int(5) NOT NULL auto_increment,
nom varchar(80) NOT NULL default '',
etat varchar(20) NOT NULL default '',
PRIMARY KEY (id)
) TYPE=MyISAM;
--
-- Contenu de la table `articles`
--
INSERT INTO `articles` VALUES (1, 'maison1', 'Libre');
INSERT INTO `articles` VALUES (2, 'maison2', 'Réservé');
INSERT INTO `articles` VALUES (3, 'maison3', 'Vendu');
*/
/********************************/
/* */
/* CONNECTION - EXECUTION */
/* */
/********************************/
$mabasededonnee="";
$connection = mysql_connect("localhost","root","");
// test la connection
if ( ! $connection )
die ("connection impossible");
// Connecte la base
mysql_select_db($mabasededonnee) or die ("pas de connection");
/********************************/
/* */
/* AJOUTER MODIFIER SUPP */
/* */
/********************************/
if ($_POST['ajouter_sql'])
{
mysql_query("INSERT INTO articles (nom,etat) VALUES('".$_POST['nom_sql']."', '".$_POST['etat_sql']."')");
echo 'Ajout terminé !! <br /><br />';
}
if ($_POST['modifier_sql'])
{
mysql_query("UPDATE articles SET nom='".$_POST['nom_sql']."', etat='".$_POST['etat_sql']."' WHERE id='".$_POST['id_sql']."'");
echo 'Modification terminé !! <br /><br />';
}
if ($_GET['supprimer'] == 'ok')
{
mysql_query("DELETE FROM articles WHERE id='".$_GET['id']."'");
echo 'Suppression terminé !! <br /><br />';
}
/********************************/
/* */
/* formulaire de modification */
/* */
/********************************/
if ($_GET['modifier'] == 'ok')
{
$id = $_GET['id'];
$q = mysql_query("SELECT * FROM articles WHERE id = $id");
$r = mysql_fetch_array($q);
?>
Modifier l' article avec l'id : <?php echo $id;?>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<input type="hidden" name="id_sql" value="<? echo $id; ?>">
<input name="nom_sql" type="text" value="<?php echo $r['nom'];?>">
<br />
Etat actuel <strong>: <?php echo $r['etat'];?> </strong>
<br />
<input name="etat_sql" type="radio" value="Libre">Libre
<input name="etat_sql" type="radio" value="Réservé">Réservé
<input name="etat_sql" type="radio" value="Vendu">Vendu
<input type="submit" name="modifier_sql" value="Modifier">
</form>
<?php }
/********************************/
/* */
/* formulaire d'ajout */
/* */
/********************************/
elseif ($_GET['ajouter'] == 'ok')
{
?> Ajouter 1 nouvelle article
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<input name="nom_sql" type="text">
<input name="etat_sql" type="radio" value="Libre" checked>Libre
<input name="etat_sql" type="radio" value="Réservé">Réservé
<input name="etat_sql" type="radio" value="Vendu">Vendu
<input type="submit" name="ajouter_sql" value="Ajouter">
</form> <?php
}
/********************************/
/* */
/* Listing des articles */
/* */
/********************************/
else
{
$q = mysql_query("SELECT * FROM articles");
while ($r = mysql_fetch_array($q))
{
$nom = $r['nom'];
$etat = $r['etat'];
$id = $r['id'];
echo '<strong>'.$nom.'</strong><br />';
echo $etat;
echo ' => ';
echo '<a href="'.$_SERVER['PHP_SELF'].'?modifier=ok&id='.$id.'">Modifier</a> - ';
echo '<a href="'.$_SERVER['PHP_SELF'].'?supprimer=ok&id='.$id.'">Supprimer</a>';
echo '<br />';
}
echo '<br />';
echo '<a href="'.$_SERVER['PHP_SELF'].'?ajouter=ok">Ajouter</a>';
}
?>Hors ligne




Merci bcp KOogar ! ça marche très bien.
Sauf que j'ai une suggestion, c'est que à mon avis je crois qu'il vaut mieux de classer les noms dans un menu déroulant, comme ça en pourra éviter d'afficher une longue liste des noms.
A part ça, rien à dire.
Je suis vraiment heureux d'être un membre de ce forum 
Hors ligne
Est ce que je peux récupérer plusieurs valeurs d'un champ sur la même page, sachant qu'il s'agit d'afficher des images de mon choix, chaque image a son id, cad je veux afficher l'image qu'a l'id 1, 13 et 14, donc je dois donner un eco avec l'id de l'image comme ça :
<?php
require('connection.php');
if(isset($_GET['id']) AND ctype_digit($_GET['id']))
{
$requete = mysql_query('SELECT etat FROM projet WHERE id IN(1, 14, 13)') OR die('Erreur de la requête MySQL');
mysql_close();
if(mysql_num_rows($requete) === 0)
{
exit;
}
$resultat = mysql_fetch_object($requete);
echo '<img src="'.$resultat['etat'].'?id='.$resultat['1'].'" alt="" />';
echo '<img src="'.$resultat['etat'].'?id='.$resultat['13'].'" alt="" />';
echo '<img src="'.$resultat['etat'].'?id='.$resultat['14'].'" alt="" />';
}
?>Mais ce code là contient des erreurs, parce que ça marche pas.
Merci.
Dernière modification par myphp_51 (07-04-2008 01:02:31)
Hors ligne
je vais regarder avec la clause WHERE IN, jamais fait avant, en fait on travail peut sur les ID mais plutot a partir du NOM du produit ou de son NUMERO de serie.. ou un champ du meme genre et ce quelque soit le produit.
j'ai fait simple pour l'instant, j'espere que ca te conviendra:
<?php
if(isset($_GET['id']) AND ctype_digit($_GET['id']))
{
// requetes
$q = mysql_query("SELECT etat,id FROM projet");
if( mysql_num_rows($requete) == 0) exit();
//resultats
while ($resultat = mysql_fetch_array($q)) {
if ($resultat['id'] == 1 OR $resultat['id'] == 14) {
echo '<img src="'.$resultat['etat'].'?id='.$resultat['id'].'" alt="" />'; }
}
}
?>Hors ligne
Comme ça, pour afficher une seul image, et ça marche :
<?php
require('connection.php');
$requete = mysql_query('SELECT etat FROM projet WHERE id=14') OR die('Erreur de la requête MySQL');
mysql_close();
if(mysql_num_rows($requete) === 0)
{
exit;
}
$r = mysql_fetch_object($requete);
echo '<img src="',$r->etat,'" alt="" />';
?>Et pour plusieurs images, il faut utiliser :
SELECT etat FROM projet WHERE id IN(1, 14, 13...etc)
et
while($r = mysql_fetch_object($requete)) // au lieu de : $r = mysql_fetch_object($requete);
mais pour :
echo '<img src="',$r->etat,'?id='.$r->id.'" alt="" />';
là je me coince??
, parce que c'est là qu'il faut indiquer avec l'id quelle image doit être affiché, ce qui va me permettre d'afficher plusieurs images sur la même page.
Hors ligne
tu peux me donner le lien ou tu as vu cette clause WHERE IN, car de mon coté, je m'en sert pour des requêtes imbriqueés, et non pour selectionner des enregistrements de cette manière.
SELECT etat FROM projet WHERE id IN(1, 14, 13...etc)
Hors ligne
Quelqu'un me la suggérer dans un autre forum
Hors ligne
Voici le code
<?php
require('connection.php');
$requete = mysql_query('SELECT etat FROM projet WHERE id IN(1, 14, 13)') OR die('Erreur de la requête MySQL');
mysql_close();
if(mysql_num_rows($requete) === 0)
{
exit;
}
while($resultat = mysql_fetch_object($requete))
{
echo '<img src="',$resultat->etat,'?id=',$resultat->id,'" alt="" />';
}
?>Hors ligne
Et avec ce code, ca marche pas ?
<?php
if(isset($_GET['id']) AND ctype_digit($_GET['id']))
{
// requetes
$q = mysql_query("SELECT etat,id FROM projet");
if( mysql_num_rows($requete) == 0) exit();
//resultats
while ($resultat = mysql_fetch_array($q)) {
if ($resultat['id'] == 1 OR $resultat['id'] == 13 OR $resultat['id'] == 14) {
echo '<img src="'.$resultat['etat'].'?id='.$resultat['id'].'" alt="" />'; }
}
}
?>Hors ligne
Oui ton code ça marche trés bien, mais c'est pas ce que je veux.
Pour moi il faut qu'il soit un peu comme ça, mais ce code ça marche pas :
<?php
require('connection.php');
// requetes
$q = mysql_query("SELECT etat,id FROM projet");
if( mysql_num_rows($q) == 0) exit();
// requetes
$q = mysql_query("SELECT etat,id FROM projet");
if( mysql_num_rows($q) == 0) exit();
?>
<table align="center" cellpadding="0" cellspacing="0" width="250">
<tr>
<td>
<?php
while ($resultat1 = mysql_fetch_array($q)) {
if ($resultat1['id'] == 13 ) {
echo '<img src="'.$resultat1['etat'].'?id='.$resultat1['id'].'" alt="" />'; }
}
?>
</td>
<td>
<?php
while ($resultat2 = mysql_fetch_array($q)) {
if ($resultat2['id'] == 1 ) {
echo '<img src="'.$resultat2['etat'].'?id='.$resultat2['id'].'" alt="" />'; }
}
?>
</td>
</tr>
</table>Cella est une page statique, j'entre dans la base de donnée, je vois les urls stockés la bas et je défini moi même dans la page la place de chaque image grâce à son numéro d'id.
Vous pouvez essayer vous même ce code pour comprendre un peu plus ce que je veux
.
Merci.
Hors ligne
ah ok, je comprend. Stock le resutat dans un tableau dans ce cas ^^
<?php
$resultat = array();
if(isset($_GET['id']) AND ctype_digit($_GET['id']))
{
// requetes
$q = mysql_query("SELECT etat,id FROM projet");
if( mysql_num_rows($requete) == 0) exit();
//resultats
while ($resultat = mysql_fetch_array($q)) {
if ($resultat['id'] == 1 OR $resultat['id'] == 13 OR $resultat['id'] == 14) {
$resultat[] = '<img src="'.$resultat['etat'].'?id='.$resultat['id'].'" alt="" />'; }
}
}
echo $resultat[0];
echo $resultat[1];
echo $resultat[2];
echo $resultat[3];
echo $resultat[4];
?>Hors ligne
Votre code ça marche pas, vous l’avez testez ?
1.J'ai pas besoin de cette ligne, puisque ma page est statique
:
if(isset($_GET['id']) AND ctype_digit($_GET['id']))
{2.Erreurs ici :
//il faut remplacer $requete par $q if( mysql_num_rows($requete) == 0) exit();
3.Si je pourrai afficher chaque image à l'aide de ce code, ça m'arrange très bien 
echo $resultat[13];
Exemple :
<table align="center" cellpadding="0" cellspacing="0" width="250">
<tr>
<td> echo $resultat[13]; </td>
<td> echo $resultat[21]; </td>
</tr>
</table>Merci KOogar.
Dernière modification par myphp_51 (10-04-2008 06:39:36)
Hors ligne
lu,
Je suis en train de terminer le premier directory php du Net
-http://directory.phpsources.org/
Lancement courant de la semaine prochaine!! voila pourquoi j'étais un peu absent... sry to be late 
Pour ton probleme je ferais comme ca:
<?php
$resultat = array();
// requetes
$q = mysql_query("SELECT etat,id FROM projet");
if( mysql_num_rows($q) == 0) exit();
//resultats
while ($resultat = mysql_fetch_array($q)) {
if ($resultat['id'] == 1 OR $resultat['id'] == 13 OR $resultat['id'] == 14) {
$var = $resultat['id'];
$resultat[$var] = '<img src="'.$resultat['etat'].'?id='.$resultat['id'].'" alt="" />'; }
}
echo $resultat[1];
echo $resultat[13];
echo $resultat[14];
?>Hors ligne
Bonjour,
J'étais un peu occupé ce Weekend, je m'excuse pour mon absence
.
Je suis vraiment heureux pour votre nouveau directory php, et je vous félicite KOogar pour votre grand travail qui va permettre tous le monde de trouver leurs bonheurs
.
Concernent toujours mon problème, malgré les explications sur la façon dont il faut que je résoudre l'affichage des images, je me trouve toujours coincé, parce que je vois que tu m'a pas bien compris
.
1.votre dernier code ça marche pas
2.supposant que je veux afficher 30 images dans des endroits différents sur la page (par la mise en place HTML), est ce que je dois répéter tous le code en haut, parce je cherche d'utiliser seulement une seule ligne (ex :<img src="'.$resultat['etat'].'?id='.$resultat['id'].'" alt="" />)
Merci.
Hors ligne
Merci pour le Directory, je lance des mailing aujourdh'ui, que du bonheur !!
Pour ton problème, essayons de raisonner différement, cela nous évitera de bricoler. Nous allons ajouter un champ dans la table sql que nous allons apeler "rang'.
Dans la table, nous allons donner un rang à chaque image. Cela nous permettras de les afficher selon leur rang. Bien sur cela se fera manuellement.
...et lors de l'affichage, il suffira simplement de faire une lecture selon le rang de l'image pour les afficher comme on le veut:
$q = mysql_query("SELECT id,etat,rang FROM projet ORDER BY rang DESC");
As tu compris ?
Hors ligne
Oui je crois que j'ai compris
, afficher une image selon son rang.
Afficher une image selon son id ou son rang, c'est la même chose, où est la différence ?
Hors ligne
id c'est l'identifiant, le rang est la place que l'enregistrement aura à l'affichage.
Hors ligne
D'accord, mais les places sur la page est en HTML
Hors ligne
SVP, peux tu me proposer le code php avec les rangs 
Hors ligne