8791 sujets

Développement web côté serveur, CMS

Bonjour,

J'aurais besoin de votre aide/avis pour un petit projet personnel.
J'ai une table qui comporte 3 champs ( ID, Titre, Page)
J'envoi les données via un formulaire + tinymce... les données sont enregistrées dans ma BDD et a ce moment la ma page se crée > le titre= nomdufichier.php.

J'aimerais savoir comment faire pour modifier mes données dans la BDD en sachant que

1) j'aimerais utiliser une liste déroulante pour déja sélectionner la bonne page a modifier..
2) une fois la page sélectionnée, qu'il fasse un update des modifications.

Merci
Salut ervvan et bienvenue Smiley cligne ,

je ne suis pas sûr de bien comprendre ta question mais j'essaie :

pour alimenter les options de ton select il suffit de lire tous les enregistrements de ta table, d'afficher le titre et de mettre l'id dans le value. Quelque chose comme :
<select...>
<?php
$sql = 'Select Titre, ID from matable';
$result = mysql_query($sql) or die (mysql_error()); 
while( $ligne = mysql_fetch_array( $result ) )
{
  echo '<option value"'.$ligne['ID'].'">'.$ligne['Titre'].'</option>'."/n";
} 
?>
</select>

En récupérant l'ID tu sais quelle page est à afficher et ensuite à modifier (avec update).

A+
super merci !! Mes enregistrements "titres" apparaissent bien dans la liste déroulante.

Mais maintenant, comment puis-je faire pour que quand je sélectionne le 'titre1' la page 'article1' s'affiche automatiquement à côté dans un textarea ?

Merci Smiley cligne
ervvan a écrit :


Mais maintenant, comment puis-je faire pour que quand je sélectionne le 'titre1' la page 'article1' s'affiche automatiquement à côté dans un textarea ?

Pour faire cela il faudrait regarder du côté d'Ajax Smiley murf ... ou à défaut soumettre automatiquement le formulaire via Javascript sur l'événement onselect.

Pour ce qui est de la solution "classique" (avec input de type submit), il suffit de commencer ta page par un test d'existence d'une variable ID (soit en post, soit en get) et si elle existe de faire une requête dans ta BDD et d'afficher le résultat dans un second formulaire.

Pour résumer :
<?php

$id = isset($_POST['ID']) ? $_POST['ID']) : 0;
$titre = '';
$page = '';
if ($id != 0) {
	$sql = 'Select Titre, Page from matable where ID = '.$id;
	$result = mysql_query($sql) or die (mysql_error()); 
	$ligne = mysql_fetch_array( $result );
	$titre = $ligne['Titre'];
	$page = $ligne['Page'];
}
?>
<!DOCTYPE ...>
<html ...>
...

Plus loin
<form id="form1" name="form1" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<select id="ID" name="ID"> 
...
</select>
<input type="submit" />
</form>

Encore plus loin
<?php
if ($page != '') {
?>
<form id="form2" name="form2" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<textarea ...>
<?php
echo $page;
?>
</textarea>
<input type="submit" />
</form>
<?php } ?>

A + Smiley smile
Modifié par Heyoan (26 Mar 2008 - 07:30)
salut,

merci de ta réponse mais cela ne marche pas, j'ai peux etre raté un épisode Smiley cligne
j'ai bien les titres qui s'affichent dans un menu déroulant et à coté soumettre la requete mais rien ne se passe...

En fait, j'avais pensé à une liste déroulante pour que le webmaster puisse changer lui-même ces pages, il sélectionne la page a modifier, le texte s'affiche, il modifie et enregistre.

As-tu peut-être une autre idée qu'une liste déroulante ? des simples liens ?
Comment faire pour que mes titres s'affichent en lien hypertexte et que quand on clique dessus cela affiche le texte dans un textarea ?
Smiley cligne

Merci
ervvan a écrit :


j'ai bien les titres qui s'affichent dans un menu déroulant et à coté soumettre la requete mais rien ne se passe...

Ce serait drôlement plus facile en voyant ton code Smiley biggol !