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 :

Interpreter un nombre comme du texte [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut Interpreter un nombre comme du texte
    Slt à tous,
    j'ai un blem qui m'améne à vous poser une petit question.

    J'ai une bdd dans laquelle j'ai des produits référencés.
    ID REF NOM ....
    par contre certains de ces produits ont une ref en chiffre uniquement style
    ID 5
    REF 154863
    NOM stylo....

    Mon souci c'est que quand je manipule la bdd pour diverses opérations, cela m'interprète cette REF comme un chiffre et c'est pas bon il faudrait que cela soit interpréter comme une chaine de texte.
    car ça me fait planter mes pages.

    Comment faire ?
    Merci de votre aide
    @+

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Bonjour,

    Pourrais-tu nous montrer un exemple d'une situation provoquant une erreur ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    le site est en dév.
    mais par exemple lors de l'ajout dans le caddie si la ref est qu'en chiffre cela ne fonctionne pas.
    ou lors du calcul de poids c'est pareil.

    je peux te communiquer un adresse mais c un peu délicat.

    voila une partie du code du caddie et poids ou ca plante par exemple
    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
    $req121 = mysql_query("SELECT * FROM tbl_user WHERE login='$_SESSION[login]'") or die("Erreur SQL121 !"); 
    while($data121 = mysql_fetch_array($req121)) {
     
     
    if (isset($_GET['prod']))
    {
    switch ($_GET['sens'])
    {
    case 'ajout' : 
    $_SESSION[$_GET['prod']] ++;
    break;
    case 'sup' : 
    $_SESSION[$_GET['prod']] --;
    //-- si la quantité < 1, le produit est supprimé du panier -----
    if ($_SESSION[$_GET['prod']] < 1) 
    unset($_SESSION[$_GET['prod']]);
    break;
    }
     
    echo'<br />';
     
    foreach($_SESSION as $cle => $qte)
    {
     
    // on créer la requete SQL et on l'envoie 
    $sql = "SELECT * FROM produit WHERE p_ref='$cle' "; 
    // on envoie la requete 
    $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 
    while ($sortie = mysql_fetch_array($req)){
    $a=$sortie[p_ref];
    $b=$sortie[p_photo];
    $c=$sortie[p_prix];
    $d=$sortie[p_design];
     
    $total+= $sortie[p_prix]*$qte;
    $thep+= $sortie[p_poids]*$qte;
     
    }
    }
    }
    echo'<form action="?rub=panierrecap&prod" method="post" name="frm" onsubmit="return ctr();" >';
    $req = mysql_result(mysql_query("SELECT COUNT(tranch2) FROM poids WHERE tranch2 > $thep"), 0);
    if($req != 0){
    }else{
     echo 'Il y a un problème de poids';
    }
     
     
     
    	$req13 = mysql_query("SELECT * FROM poids WHERE $thep BETWEEN tranch1 AND tranch2") or die("Erreur SQL13 !"); 
    	while($data13 = mysql_fetch_array($req13)) {
    	echo'<table><tr><td class="cad03 centrage"><input type="radio" name="choix" value="'.$data13[id].'" onclick="blnCoche = true;"></td>
    	<td class="cad03">'.$data13[trans].'</td>
    	<td class="cad07">'.$data13[infos].'</td>
    	<td class="cad03 droite">'.$data13[prix].' €</td>
    	</tr></table><br />';
    	}
     
     
     
    echo'<table class="tabcad03">
    <tr><td class="cad05 gauche"><img class="vertical" src="./img/arrow2.png" alt="" /><a class="membre" href="?rub=panierfin&prod">RETOUR</a>
    </td><td class="cad07 droite"></td>
    <td  class="cad05 droite" ><input type="submit" value="CONTINUER" class="boutonlien" >
    <img class="vertical" src="./img/arrow.png" alt="" /></td></tr>
    </table>
    </form>';	
     
      }
    c'est dur à expliquer

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Pourrais-tu indiquer exactement ce qui plante ?
    Peux-tu nous montrer un code minimal qui reproduise ce que tu n'arrives pas a traiter ?

    Je suppose que ton champs "poids" par exemple est de type entier ?

    Le transtypage de PHP fait qu'a priori le passage entier<->chaine se fait naturellement selon le contexte.

    Ps : n'oublie pas de mettre les guillemets a tes index $data13['trans']
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    j'arrive a traiter les variables mais c'est uniquement le champs REF qui pose probleme.

    Si par exemple je modifie le champs REF en ajoutant juste un point ou une lettre a la REF existante, style :
    REF 154863
    en
    REF 154863. ou 154863a

    ça fonctionne

    Mon champs dans ma BDD est un champs TEXT,
    je ne pense pas que cela joue ?

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

Discussions similaires

  1. Utiliser un CLOB comme champ texte ?
    Par tostinni dans le forum SQL
    Réponses: 7
    Dernier message: 27/08/2008, 22h00
  2. scripts perl affiches comme du texte
    Par HeLLSoNG dans le forum Apache
    Réponses: 2
    Dernier message: 15/11/2006, 21h12
  3. [VBA-E]Plage contenant des nombres et du texte
    Par Mirx1 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/04/2006, 18h33
  4. Arrondir un nombre comme j'en ai envie !
    Par beletteroi dans le forum Access
    Réponses: 6
    Dernier message: 03/11/2005, 12h42
  5. automationn excel, Champ nombre reste en text ???
    Par mat_lefebvre dans le forum Access
    Réponses: 16
    Dernier message: 09/12/2003, 11h37

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