IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

probleme avec INSERT INTO mysql


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Homme Profil pro
    intermittent du spectacle
    Inscrit en
    Août 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : intermittent du spectacle
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2014
    Messages : 14
    Points : 7
    Points
    7
    Par défaut probleme avec INSERT INTO mysql
    bonjour

    bon je reviens vers vous pour de l'aide, je sèche complètement depuis quelques jours
    je vais essayer d'être clair mais pas évident car novice, j'apprend pour faire mon site qui est bien avancé!

    en clair

    j' ai créé mes tables
    une audio, un livre or, et news-letter

    alors mon problème est que je peux afficher le contenu de n'importe quelles données de mes tables, je peux aussi faire la fonction DELETE FROM

    mais dès qu'il s'agit de faire la fonction INSERT INTO, rien ne se passe, rien ne s'insert et je comprends pas pourquoi, je peux faire SELECT et DELETE et pas faire INSERT INTO, la seule table qui fonctionne en INSERT INTO et la news-letter, vraiment bizarre...
    je ne sais pas de quoi vous avez besoin pour m'aider je peux vous donner peut être déjà ma page codé de l'audio
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    <?php
    include('../bdd.php');
    if(!empty($_POST))
    {
    	extract($_POST);
    	$validation = true;
     
    	if(empty($titre) || empty($artiste))
    	{
    		$validation = false;
    		$input_error ='Remplissez tous les champs';
    	}
    	if(!isset($_FILES['source']) || $_FILES['source']['error'] >0)
    	{
    		$validation = false;
    		$file_error = 'Indiquez une source audio';
    	}
    	else
    	{
    		$infos = pathinfo($_FILES['source']['name']);
    		if($infos['extensions'] != 'ogg')
    		{
    			$validation = false;
    			$file_error ='Votre fichier doit être au format ogg';
    		}
     
    	}
    	if($_FILES['source']['size'] > 10000000)
    	{
    		$validation = false;
    		$file_error ='Votre fichier est trop volumineux (> à 10Mo)';
    	}
    	if($validation)
    	{
    		move_uploaded_file($_FILES['source']['tmp_name'],'../musiques/'.$_FILES['source']['name']);
    		$req = $bdd->prepare("INSERT INTO playlist (titre, artiste, source) VALUES(:titre,:artiste,:source)");
    		$req->execute(array(
    		'titre' => $titre,
    		'artiste' => $artiste,
    		'source' => $_FILES['source']['name']
    		));	
    		$req->closeCursor();
    		$ok = 'Enregistrement effectué !';
    	}
     
    }
    ?>
     
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"><head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <!--appel de la police google font-->
    	<link href='http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,700' rel='stylesheet' type='text/css' />
    <!--appel css-->
    	<link rel="stylesheet" type="text/css" href="../styles/style.css"/>
        <link rel="stylesheet" type="text/css" href="../styles/playlist.css"/>
     
    <title>Document sans nom</title>
    </head>
     
    <body>
     
     
    <!--debut section menu-->
    	<section id="main">
     
    <!--debut section contenu-->
    	<section id="contenu">
        <h1>Bienvenue</h1>
     
    <!--debut player-->
    <section>
    <div class="remove"></div>
    <div><strong>Ajouter une musique dans la playlist :</strong></div>
    <?php if(isset($input_error))echo'<div class="error">- '.$input_error.'</div>';?>
    <?php if(isset($file_error))echo'<div class="error">- '.$file_error.'</div>';?>
    <?php if(isset($ok))echo'<div class="error">- '.$ok.'</div>';?>
    <form method="post" enctype="multipart/form-data">
    	<input type="text" name="titre" placeholder="Titre de la musique" value="<?php if(isset($titre))echo $titre; ?>" />
        	<input type="text" name="artiste" placeholder="Nom de l'artiste" value="<?php if(isset($artiste))echo $artiste; ?>" />
        <input type="file" name="source" />
        <input type="submit" value="Ajouter dans lap laylist" />
    </form>
    	<table class="bordered">
    		<thead>
    			<td></td>
    			<td class="titre">Titre</td>
    			<td class="artiste">Artiste</td>
    		</thead>
    		<?php
    		include('../bdd.php');
    		$select = $bdd->query("SELECT * FROM playlist ORDER BY titre");
    		$compteur = 0;
    		while($donnees = $select->fetch())
    		{
    			?>
    		<tr <?php if($compteur % 2 == 0){echo 'class="blanc"';}else{echo 'class="gris"';} ?>>
    			<td><button class="removeIcon" tittle="Supprimer" onclick="supprimer('<?php echo str_replace("'","\'",$donnees['titre']); ?>','<?php echo str_replace("'","\'",$donnees['artiste']); ?>','<?php echo $donnees['id']; ?>')"></button></td>
    				<td><?php echo $donnees['titre']; ?></td>
    				<td><?php echo $donnees['artiste']; ?></td>
    			</tr>
    			<?php
    			$compteur += 1;
    		}
    		$select->closeCursor();
    		?>
    	</table>
    	<script>
    function supprimer(titre,artiste,id){
    	var remove = document.querySelector('.remove');
    	remove.style.display ='block';
    	remove.innerHTML ='<a href="remove.php?id=' + id + '">Supprimer définitivement <strong>' + titre + '</strong> de ' + artiste + '</a>';
    }
    	</script>
        </section> 
    <!--fin player-->
     
        </section>
    <!--fin section contenu-->
     
        </section>
    <!--fin section menu-->
     
     
     
    	</div>
    <!--fin wrapper-->
     
    </body> 
    </html>
    ensuite voici mon include bdd
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    try
    {
    	$bdd = new PDO('mysql:host=localhost;dbname=fcom', 'root', '') or die(print_r($bdd->errorInfo()));
    	$bdd->exec('SET NAMES utf8');
    }
    catch(Exeption $e)
    {
    	die('Erreur:'.$e->getMessage());
    }
    ?>
    et pour finir ma page footer qui contient mon formulaire news
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <!--debut footer-->
    	<div id="footer">
        <div id="retour-top"><a href="#">Retour en haut de page <img src="images/ico-retour.png" /></a></div>
        <div id="news-letter">
     
    <?php
    if (! empty($_POST['email'])) {
        include('bdd.php');
        $req = $bdd->prepare('INSERT INTO news_letter (email) VALUES(?)');
        $req->execute(array($_POST['email']));
        $req->closeCursor();
     
    }
    ?>           
                <form  action="envoi_news.php" method="post" autocomplete="off">
                <label for="nom">S'inscrire à la news-letter</label>
                <input type="email" placeholder="entrez votre email" name="email" id="email"  />
                <input type="submit" value="ok" />
                </form>
     
    </div>
    </div>
    <!--fin footer-->
    si quelqu'un peut m'aider
    je vous remercie d'avance

  2. #2
    Futur Membre du Club
    Homme Profil pro
    intermittent du spectacle
    Inscrit en
    Août 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : intermittent du spectacle
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2014
    Messages : 14
    Points : 7
    Points
    7
    Par défaut
    et aussi savoir si il y a une importance quand on fait une requete sql de mettre ' simple guillemet ou double guillemet " ex ('SELECT FROM.....'); et ("SELECT FROM....");
    je travaille avec dernière version easy php

    peut être que cela beug sur mes configuration de mes tables dans l'administration, bref si vous pouvez me dépanner!
    merci

  3. #3
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Aucun message d'erreur ? On peut avoir la structure de ta table (de préférence avec la clé primaire) ?


    Pour répondre à ta question sur les guillemets, je te conseille de lire Apostrophes ou guillemets : lesquels choisir ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  4. #4
    Futur Membre du Club
    Homme Profil pro
    intermittent du spectacle
    Inscrit en
    Août 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : intermittent du spectacle
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2014
    Messages : 14
    Points : 7
    Points
    7
    Par défaut
    structure table ecran.doc

    et non je n'ai pas de message d'erreur

  5. #5
    Futur Membre du Club
    Homme Profil pro
    intermittent du spectacle
    Inscrit en
    Août 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : intermittent du spectacle
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2014
    Messages : 14
    Points : 7
    Points
    7
    Par défaut
    apparemment j'ai trouvé quelque chose mais aimerait comprendre pourquoi par contre si quelqu'un peut me dire, ce serait cool.
    vais essayer d'expliquer!

    sur mon footer ou il y a mon formulaire à remplir qui est juste une adresse mail et une fois rempli elle est redirigé par " action= "dans la balise <form> vers une autre page juste pour dire merci de vous être blabla.... et cela fonctionne je récolte bien dans ma table sql les infos du formulaire!

    maintenant pour le livre d'or qui ne fonctionne pas

    j ai sur ma page livre d'or une requete sql qui m'affiche bien tout les message que j'ai enregistre directement dans mysql! pas de soucis!
    sur cette meme page j'ai fais un lien pour accéder au formulaire cela fonctionne aussi et c'est la que tout coince
    sur la page du formulaire une fois rempli cela ne m'affiche pas , ni enregistre dans ma table,et j'ai fais la même que pour la page news une redirection par "action=" dans la balise <form> seulement je n'ai pas fais de page comme quoi merci pour votre message,etc... j'ai mis la page du livre d'or en redirection, la même ou se trouve ma requête sql pour afficher les messages et apparemment ça coince à cause ça!! car me suis aperçu quand ne faisant aucune direction par action, en la supprimant carrément je n'ai plus ce problème!!!! seulement je n'ai plus de redirection mais ce coup ci tout s'enregistre bien dans ma table et si j'actualise la page livre d'or cela s'affiche!

    ma question est ce normal, doit on d'abord faire une redirection avec merci etc....et de cette page merci refaire un lien vers la page livre d'or écrit genre voici votre message etc...?

    quelqu' un à t il une explication et solution??

  6. #6
    Futur Membre du Club
    Homme Profil pro
    intermittent du spectacle
    Inscrit en
    Août 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : intermittent du spectacle
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2014
    Messages : 14
    Points : 7
    Points
    7
    Par défaut
    et petite précision aussi, en faite je ne peux rien rediriger par cette méthod <form> action=".....php"</form> une fois rempli le formulaire! autrement ça coince, cela fonctionne que si je mets un # ou que je retire action

Discussions similaires

  1. [MySQL] probleme avec INSERT INTO avec Mysql
    Par monlou dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 13/03/2010, 00h41
  2. probleme avec insert into
    Par diawdji dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 28/01/2008, 02h00
  3. probleme avec insert into
    Par pseudobidon57 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 09/10/2007, 14h05
  4. Probleme avec INSERT INTO et select
    Par jmjmjm dans le forum Requêtes
    Réponses: 9
    Dernier message: 28/01/2007, 22h51
  5. probleme avec insert into
    Par bscorpion dans le forum Langage SQL
    Réponses: 5
    Dernier message: 05/07/2005, 13h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo