8795 sujets

Développement web côté serveur, CMS

Bonjour,

Toujours sur l'administration des dates de concert :
-> page de résultat : http://www.theviewers.fr/concerts.php
-> page d'administration : http://www.theviewers.fr/admin/concerts_admin.php (ajout)
-> page d'administration : http://www.theviewers.fr/admin/modif_concerts_admin.php (modif)

A votre avis, est-il possible d'afficher un aperçu de ce que donnera les informations renseignées dans le formulaire, avant la validation de celui-ci?

Voici le code complet de la page :

<?php 
session_start(); 
?>

<!DOCTYPE html>
<html>
    <head>
		
		<title>.:: Admin - Concerts ::.</title>
	
		<meta charset="utf-8" />
		<meta name="description" content="Administration de la page concert."/>
		<meta name="author" content="Alexandre BENCHERIF"/>
        
		<link rel="stylesheet" href="style_admin.css"/>
		<link rel="shortcut icon" href="../images/the_viewers.ico"/>
		<!--[if lt IE 9]>
        <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
        <![endif]-->
		<!--[if lte IE 7]>
        <link rel="stylesheet" href="style_ie.css" />
        <![endif]-->
		<script type="text/javascript" src="http://code.jquery.com/jquery.js"></script>
		<script type="text/javascript" src="../jquery/jquery.validate.js"></script>
		<script>
			$(document).ready(function () {
					$("#formulaire").validate({
						rules: {
							nomconcert: {
								required: true,
								maxlength: 50
							},
							adresseconcert: {
								required: true,
								maxlength: 50
							},
							titre: {
								required: true,
								maxlength: 30,
							},
							lien: {
								maxlength: 2000
							},
							icone: {
								required: true,
							},
							dateconcert: {
								required: true,
							},
						},
						messages: {
							nomconcert: {
								required: "Merci d'indiquer le nom du concert.",
								maxlength: "50 caractères maximum."
							},
							adresseconcert: {
								required: "Merci d'indiquer l'adresse ou le lieu du concert.",
								maxlength: "50 caractères maximum."
							},
							titre: {
								required: "Merci d'indiquer le nom de l'image.",
								maxlength: "30 caractères maximum.",
							},
							lien: {
								maxlength: "Le lien ne peut pas dépasser 2000 carcatères."
							},
							icone: {
								required: "Merci de choisir une image valide."
							},
							dateconcert: {
								required: "Merci de choisir la date du concert."
							},
						}		
					});                 
			});
		</script>
		<style type="text/css">

		</style>
    </head>

	<body>
	<header>
				<?php $nav_en_cours = 'rubrique2'; ?>
                <?php include("menu_admin.php"); ?>
    </header>
		<?php //if (!isset($_SESSION['accesok']) OR $_SESSION['accesok'] == "faux") { $_SESSION['page'] = "concerts_admin.php"; include("verif_acces.php"); }?>
			<p> Bienvenue sur la page d'administration des dates de concerts. </p>	
			<p> Pour ajouter une date de concert, merci de bien vouloir remplir le formulaire ci-après.</p>
			<p> Vous pouvez récuperer les fichiers nécessaires à la construction de l'image de la date <a href="http://www.theviewers.fr/admin/outils_img_date.zip"/> ici </a></p>
				
		<?php //vérification des champs et affichage du formulaire si pas ok
				if ((!isset($_POST['titre']) OR $_POST['titre'] == "")
					OR (!isset($_POST['dateconcert']) OR $_POST['dateconcert'] == "")
					OR (!isset($_POST['nomconcert']) OR $_POST['nomconcert'] == "")
					OR (!isset($_POST['adresseconcert']) OR $_POST['adresseconcert'] == "")
					OR ( strlen($_POST['lienconcert']) > 2000))
				{
				// Afficher ou réafficher le formulaire de saisie des informations
				?>	
		<div id="bloc_formulaire">
			<form id="formulaire" method="post" action="concerts_admin.php" enctype="multipart/form-data">
				
				<label for="icone">Image de la date du concert *: (PNG | max 5000 Ko) :</label>
				<input type="file" name="icone" id="icone" required/><br />
				<input type="hidden" name="max_file_size" value="5242880" /> <!--5242880 = 5 MO -->
				
				<label for="titre">Nom de l'image * (MOIS(3-4 lettres) + - + jour(2 chiffres) + - + année(4 chiffres), par exemple : OCT-07-2014 pour le 07/10/2014) :</label>
				<?php $date = date("M-d-Y"); $date = strtoupper($date);?>
				<input type="text" name="titre" value="<?php if(!empty($_POST['titre'])) echo $_POST['titre']?>" id="titre" placeholder="<?php echo $date; ?>" required/><br />
				
				<label for="dateconcert">Date du concert *:</label>
				<input type="date" name="dateconcert" value="<?php if(!empty($_POST['dateconcert'])) echo $_POST['dateconcert']?>" id="dateconcert" required/><br />
				
				<label for="nomconcert">Nom du concert *:</label>
				<input type="text" name="nomconcert" value="<?php if(!empty($_POST['nomconcert'])) echo $_POST['nomconcert']?>" id="nomconcert" style="width:300px" placeholder="Tremplin bidule" required/><br />
				
				<label for="adresseconcert">Adresse du concert *:</label>
				<input type="text" name="adresseconcert" value="<?php if(!empty($_POST['adresseconcert'])) echo $_POST['adresseconcert']?>" id="adresseconcert" style="width:300px" placeholder="Place de la mairie"required/><br />
				
				<label for="lienconcert">lien du concert :</label>
				<input type="text" name="lienconcert" value="<?php if(!empty($_POST['lienconcert'])) echo $_POST['lienconcert']?>" id="lienconcert" style="width:300px" maxlength="2000" placeholder="http://www.theviewers.fr/admin/concerts_admin.php" /><br />
				
				<input type="submit" name="submit" value="Envoyer" title="Cliquer pour ajouter la date." />
			</form>
			* = champs obligatoires
		</div>
				
				<?php //verif erreurs
				if ($_FILES['icone']['error'] > 0) $erreur = "Erreur lors du transfert";
				if ($_FILES['icone']['size'] > $_POST['max_file_size']) $erreur = "Le fichier est trop gros";
				if (empty($erreur)) {} else {echo $erreur; exit();} //permet l'affichage des erreurs et sort s'il y en a
				
				}//fin de la condition if de verification du formulaire et donc envoi des infos
				else // Les informations sont toutes remplies on peut ajouter les infos à la bdd et enregistrer l'image sur le serveur.
				{
				
				//permet l'enregistrement de l'image dans le fichier image, de nommer l'image selon le nom choisi dans le formulaire et ajoute l'extension.png
				$nom = "../images/dates_test/{$_POST['titre']}.png";
				$resultat = move_uploaded_file($_FILES['icone']['tmp_name'],$nom);
				if ($resultat) echo "Transfert réussi"; move_uploaded_file($_FILES['icone']['tmp_name'],$nom);
				
				
				//déclaration des variables à ajouter à la base :
					$nomimage = utf8_decode("{$_POST['titre']}.png");
					$date = $_POST['dateconcert'];
					$nomconcert = utf8_decode($_POST['nomconcert']);
					$adresse = utf8_decode($_POST['adresseconcert']);
					$lien = utf8_decode($_POST['lienconcert']);
					
					include('../database.php'); //= connexion à la base via les fichiers prédéfinis

					//requette préparée pour inserée les données saisies en récupérant les variables
						$req = $bd->prepare('INSERT INTO test (nomimagedate, date, nomconcert, adresse, lien) VALUES(:nomimage, :date, :nomconcert, :adresse, :lien)');
						$req->execute(array(
							'nomimage' => $nomimage,
							'date' => $date,
							'nomconcert' => $nomconcert,
							'adresse' => $adresse,
							'lien' => $lien
							));
				?> 
				<p><a href="concerts_admin.php">Ajouter une autre date?</a></p>
				<?php
				}
				?>
	</body>
</html>


Je ne sais pas du tout quelle méthode utiliser pour le faire.
Mais par exemple, voici un montage paint lol :
upload/50471-apercu.jpg

Merci d'avance de votre aide.
Bonjour,

Tu affiches une page après enregistrements des données et tu proposes de valider ou nom ce concert.

Si valider, tu actives ton enregistrement.

Si pas valider, tu supprimes ton enregistrement.
Bonjour,

C'est une bonne logique. Merci pour ce retour même quelques mois après.
Cela pourra être utile sur d'autres projets.

Cordialement.