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

PHP & Base de données Discussion :

insertion d'une chaine dans une BDD MySQL


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 141
    Par défaut insertion d'une chaine dans une BDD MySQL
    Bonjour,

    j'utilise actuellement une base de données MySQL dans laquelle je stocke des chaines de la forme "0101000110100". La chaine est bien inserée dans la base de données cependant si la chaine commence par "0" celui ci n'est pas inseré dans la base donc je me retrouve avec des caracteres en moins... Il y a t-il une astuce pour que tous les caracteres de la chaine soient insérés meme si cette derniere commence par 0? Cela me parait bizarre tout de meme

    Merci

  2. #2
    Membre confirmé Avatar de Wiink
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 63
    Par défaut
    Ta chaine a du passer en type numerique a un moment, verifie que ta chaine est toujours entre quote et toujours dans des variable de type string (ou varchar ...).

  3. #3
    Membre confirmé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 141
    Par défaut
    Ma chaine est au debut un tableau de 14 chiffres (0 ou 1). Je la convertit ensuite de la maniere suivante avant de l'inserer dans la base

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    foreach ($individu as $bit) {
     
    		$str.=$bit;
     
    }
    Il y a t-il un probleme là dedans?

  4. #4
    Membre confirmé Avatar de Wiink
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 63
    Par défaut
    Non.
    Montre ton code jusqu'au passage de $str dans ta requête sql.

  5. #5
    Membre confirmé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 141
    Par défaut
    Mon code est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    foreach ($individu as $bit) {
     
    		$str.=(string)$bit;
     
    	} 
     
    	/* Recuperation des valeurs A, B et C */
    	$val = array();
    	$val = valeurABC($individu);
     
    	$requete = ('insert into individu (eval, valA, valB, chromosome)  values (0,'.$val[0].','.$val[1].','.$str.')')


    ensuite j'utilise la variable $requete comme requete SQL evidemment

  6. #6
    Membre émérite
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Par défaut
    Initialise la variable $str = "";
    et vérifier si le type du champ de la base est une chaine.

  7. #7
    Membre confirmé Avatar de Wiink
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 63
    Par défaut
    Le .= cast la variable en chaine m4riachi.

    @nzo70 : Les strings de ta requete doivent être misent entre quote :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    $requete = ('insert into individu (eval, valA, valB, chromosome)  values (0,'.$val[0].','.$val[1].',\''.$str.'\')')

  8. #8
    Membre confirmé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 141
    Par défaut
    Merci cela fonctione

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. recherche d'une chaine dans une chaine
    Par Katachana dans le forum Langage
    Réponses: 2
    Dernier message: 15/07/2008, 12h10
  2. recherche d'une chaine dans une chaine
    Par jpclutier dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 03/12/2007, 11h30
  3. Tester une chaine dans une chaine
    Par ulysse031 dans le forum Algorithmes et structures de données
    Réponses: 13
    Dernier message: 26/03/2007, 00h48
  4. chercher caractére d'une chaine dans une chaine
    Par ulysse031 dans le forum Langage
    Réponses: 25
    Dernier message: 21/03/2007, 18h09
  5. Réponses: 2
    Dernier message: 19/10/2005, 15h38

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