J'ai un pbm avec l'insertion en bdd de certains champs.
Les dates et le numéro de departement, le reste pas de pbm.
Le code:
<?php
$erreurs = array();
if (isset($_GET['id_annonce'])) {
$idAnn = $_GET['id_annonce'];
} elseif (isset($_POST['id_annonce'])) {
$idAnn = $_POST['id_annonce'];
} else {
$idAnn = 0;
}
if(!empty($_POST)) {//soumission du formulaire
//Verification titre
if(empty($_POST['titre']))
{
$erreurs['titre'] = 'Renseigner un nom de sortie';
}
//Verification du champ email( on vérifie si le champ n'est pas vide )
if(!preg_match("/^[a-z0-9\-_.]+@[a-z0-9\-_.]+\.[a-z]{2,3}$/i",$_POST['email'])){
$erreurs['email'] = "Veuillez verifier la saisie de votre e-mail";
}
//Verification du telephone
if(empty($_POST['phone']))
{
$erreurs['phone'] = 'Renseigner un telephone';
}
//Verification du champ email( on vérifie si le champ n'est pas vide )
if(!preg_match("#^0[1-68]([-. ]?[0-9]{2}){4}$#",$_POST['phone'])){
$erreurs['phone'] = "Veuillez verifier la saisie de votre téléphone";
}
//Verification de l'adresse url
if(empty($_POST['website']))
{
$erreurs['website'] = 'Veuillez renseigner une adresse url';
}
//Verification de la saise de l'adressee url
if(!preg_match("#^http://[w-]+[w.-]+.[a-zA-Z]{2,6}#i",$_POST['website'])){
$erreurs['website'] = "Veuillez verifier la saisie de votre adresse url";
}
//Verification description
if(empty($_POST['email']))
{
$erreurs['email'] = 'verifier';
}
//Verification code postal
if(empty($_POST['postcode']))
{
$erreurs['postcode'] = 'Renseigner un code postal';
}
//Verification sous-titre
if(empty($_POST['sous_titre']))
{
$erreurs['sous_titre'] = 'Votre sortie en quelques mots';
}
//Verification description
if(empty($_POST['description']) )
{
$erreurs['description'] = 'Le detail de votre sortie';
}
/////////
// Testons si le fichier a bien été envoyé et s'il n'y a pas d'erreur
// Upload des fichier
$namefile = '';
if(!empty($_FILES)) {
if(!empty($_FILES['photo']['tmp_name'])) {
$path = 'img/annonce/';
$namefile = filename($_FILES['photo']['name'], $_POST['titre']);
$return = upload($_FILES['photo'], $namefile, $path, array('image/jpg', 'image/jpeg', 'image/pjpeg', 'image/bmp', 'image/png', 'image/gif'));
echo $return[0];
$erreur = $return[1];
if($erreur <= 1) {
echo imageparfaite(600, 600, $path.$namefile, $path.'600/'.$namefile, 1);
echo imageparfaite(300, 300, $path.$namefile, $path.'300/'.$namefile, 1);
} else {
echo $erreur;
}
// Faire un message du genre annonce envoyé avec succes
}
}
//le tableau d'erreurs est vide alors on insère les données
if( empty( $erreurs) ){
$_POST['jour_semaine'] = array(); // Puisque ca a disparu ...
//conversion de la date debut du format fr(jj:mm:aaaa hh:mm:ss) en format us(aaaa-mm-jj hh:mm:ss)
$date_debut = date_create_from_format('d/m/Y H:i', $_POST['date_debut_sortie']);
$date_debut = date_format($date_debut, 'Y-m-d H:i:s');
//conversion de la date fin du format fr(jj:mm:aaaa hh:mm:ss) en format us(aaaa-mm-jj hh:mm:ss)
$date_fin = date_create_from_format('d/m/Y H:i', $_POST['date_debut_sortie']);
$date_fin = date_format($date_fin, 'Y-m-d H:i:s');
$sql = "SELECT * FROM `loisirs` WHERE `id_loisirs` =".$idAnn;
$req = $bdd->query($sql);
$modif = $bdd->prepare("UPDATE loisirs SET id_region = :id_region, id_departements = :id_departements, id_type_loisirs = :id_type_loisirs, photo = :photo, titre = :titre, sous_titre = :sous_titre, date_debut_sortie = :date_debut_sortie, date_fin_sortie = :date_fin_sortie, description = :description, phone = :phone, email = :email, website = :website, street = :street, postcode = :postcode, city = :city, price = :price WHERE id_loisirs =".$idAnn);
$modif->execute(array(
'id_region'=>regionIdByDepartement($_POST['departements']),
'id_departements' => $_POST['id_departements'],
'id_type_loisirs' => $_POST['id_type_loisirs'],
'photo'=>$namefile,
'titre' => $_POST['titre'],
'sous_titre' => $_POST['sous_titre'],
'date_debut_sortie' => $_POST['date_debut_sortie'],
'date_fin_sortie' => $_POST['date_fin_sortie'],
'description' => $_POST['description'],
'phone' => $_POST['phone'],
'email' => $_POST['email'],
'website' => $_POST['website'],
'street' => $_POST['street'],
'postcode' => $_POST['postcode'],
'city' => $_POST['city'],
'price' => $_POST['price']
));
echo '<div class="container"><div class="col-md-6 col-md-offset-2 col-sm-8 col-sm-offset-2">
<div class="alert alert-success okay" role="alert"> <i class="fa fa-smile-o"></i>
Votre annonce à bien était modifiée et sera analyser dans les 24H00</div></div></div>';
}else{//le tableau ne contient
echo '<div class="container"><div class="col-md-6 col-md-offset-2 col-sm-8 col-sm-offset-2">
<div class="alert alert-danger okay" role="alert">Renseignez les champs vides</div></div></div>';
}
}//fin de la soumission du formulaire
?>
Et coté formulaire:
<form class="ins_con" action="modifier_annonce.php" method="post" enctype="multipart/form-data" onSubmit="return(VerifForm(this))">
<input type="hidden" name="id_annonce" value="<?php echo $idAnn; ?>">
<center><h4>Modifier ma sortie</h4></center>
<br>
<label for="departement">Departement </label>
<select class="form-control" name="departements" id="departement">
<option value="">Département dans lequel votre évenement se déroulera</option>
<?php $departement = !empty($_POST['departement']) ? $_POST['departement'] : NULL; echo aRegionDepartement($departement); ?>
</select>
<br>
<!-- bla bla -->
<label>Sortie</label>
<select class="form-control" name="type_loisirs" id="age">
<option value="">Le type d'évenement</option>
<?php foreach($aLoisirs as $k => $v) {
$selected = !empty($_POST['type_loisirs']) && ($_POST['type_loisirs'] == $k) ? ' selected="selected"' : NULL;
echo '<option value="'.$k.'"'.$selected.'>'.$v.'</option>'."\n";
} ?>
</select>
<br>
<!-- titre de la sortie -->
<label>titre :</label>
<input class="form-control" id="titre" type="text" name="titre" value="<?php if(isset($_POST['titre'])) echo $_POST['titre'];?>" />
<?php if(isset($erreurs['titre'])) echo '<div class="alert alert-danger" role="alert">' .$erreurs['titre'].'</div>';?>
<br>
<!-- titre de la sortie -->
<label>email :</label>
<input class="form-control" type="text" name="email" value="<?php if(isset($_POST['email'])) echo $_POST['email'];?>" />
<?php if(isset($erreurs['email'])) echo '<div class="alert alert-danger" role="alert">' .$erreurs['email'].'</div>';?>
<br>
<!-- Ville de la sortie -->
<label>Rue</label>
<input class="form-control" type="text" name="street" value="<?php if(isset($_POST['street'])) echo $_POST['street'];?>" />
<?php if(isset($erreurs['street'])) echo '<div class="alert alert-danger" role="alert">' .$erreurs['street'].'</div>';?>
<br>
<!-- Code postal de la sortie -->
<label>Code postal *</label>
<input class="form-control" type="text" name="postcode" id="postcode" value="<?php if(isset($_POST['postcode'])) echo $_POST['postcode'];?>" />
<div class="error"><?php if(isset($erreurs['postcode'])) echo $erreurs['postcode'];?></div>
<script>
$(document).ready(function(){
$( "#postcode" ).autocomplete({
source: "autocomplet.php",
dataType: "json",
minLength: 1,
select: function( event, ui ) {
$('#city').val(ui.item.ville);
}
});
});
</script>
<br>
<!-- Ville de la sortie -->
<label>Ville *</label>
<input class="form-control" type="text" name="city" id="city" value="<?php if(isset($_POST['city'])) echo $_POST['city'];?>" readonly placeholder="Indiquez votre code postal avant !" />
<?php if(isset($erreurs['city'])) echo '<div class="alert alert-danger" role="alert">' .$erreurs['city'].'</div>';?>
<br>
<!-- Sous-titre de la sortie -->
<label>Sous titre*</label>
<input class="form-control" type="text" name="sous_titre" value="<?php if(isset($_POST['sous_titre'])) echo $_POST['sous_titre'];?>" />
<br>
<!-- Sous-titre de la sortie -->
<label>website</label>
<input class="form-control" type="text" name="website" value="<?php if(isset($_POST['website'])) echo $_POST['website'];?>" />
<?php if(isset($erreurs['website'])) echo '<div class="alert alert-danger" role="alert">' .$erreurs['website'].'</div>';?>
<br>
<!-- Sous-titre de la sortie -->
<label>Prix</label>
<input class="form-control" type="text" id="price" name="price" value="<?php if(isset($_POST['price'])) echo $_POST['price'];?>" />
<br>
<!-- Description de la sortie -->
<label>Detail de votre sortie</label>
<input class="form-control" type="text" name="description" value="<?php if(isset($_POST['description'])) echo $_POST['description'];?>" />
<?php if(isset($erreurs['description'])) echo '<div class="alert alert-danger" role="alert">' .$erreurs['description'].'</div>';?>
<br>
<label>Date de début</label>
<input class="form-control" id="date_debut_sortie" name="date_debut_sortie" type="text" value="<?php echo !empty($_POST['date_debut_sortie']) ? $_POST['date_debut_sortie'] : NULL; ?>" />
<br>
<label>Date de fin</label>
<input class="form-control" id="date_fin_sortie" name="date_fin_sortie" type="text" value="<?php echo !empty($_POST['date_fin_sortie']) ? $_POST['date_fin_sortie'] : NULL; ?>" />
<script type="text/javascript">// <![CDATA[
$(document).ready(function(){
$('#date_debut_sortie').datetimepicker({
format:'d/m/Y H:i',
onShow:function( ct ){
this.setOptions({
maxDate:$('#date_fin_sortie').val()?$('#date_fin_sortie').val():false
})
},
timepicker:true
});
$('#date_fin_sortie').datetimepicker({
format:'d/m/Y H:i',
onShow:function( ct ){
this.setOptions({
minDate:$('#date_debut_sortie').val()?$('#date_debut_sortie').val():false
})
},
timepicker:true
});
});
// ]]></script>
<br>
<label>Télephone</label>
<input class="form-control" type="text" name="phone" value="<?php if(isset($_POST['phone'])) echo $_POST['phone'];?>" />
<?php if(isset($erreurs['phone'])) echo '<div class="alert alert-danger" role="alert">' .$erreurs['phone'].'</div>';?>
<br>
<label>Photo</label>
<input name="photo" type="file"/>
<br>
<input class="btn-u" type="submit" value="ENVOYER">
</form>
J'affiche mes "problèmes avec print"
<?php Print_r($_FILES) ?>
<?php Print_r($_POST['date_fin_sortie']) ?>
<?php Print_r($_POST['date_debut_sortie']) ?>
<?php Print_r($_POST['departements']) ?>
Mais résultats sont bon mais ne s'insere pas en bdd.Je recois bien avec le PRINT par exemple:
Array ( [photo] => Array ( [name] => 1599393_303280549860641_1209441043662790691_o.jpg [type] => image/jpeg [tmp_name] => /home/temporaire/upload/phpjfMe3j [error] => 0 [size] => 314330 ) )
30/10/2014 17:00
29/10/2014 17:00
38