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 :

Affichage / récupération champ text dans un tableau php [SQL-Server]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 137
    Points : 68
    Points
    68
    Par défaut Affichage / récupération champ text dans un tableau php
    Bonjour

    Je tente actuellement de développer un site web en php pour interroger une base mssql contenant mes métriques de performances historisées.
    Tout fonctionne correctement sauf la récupération des plans d’exécution et le code SQL pour ceux contiennent beaucoup de caractères.

    Pour la récupération du code sql je construis un tableau comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
      	while(odbc_fetch_into($l_tab_resul,$row)){
      		for($i=0;$i<=$width;$i++){
    			    $val = trim($row[$i]);
    				$pieces = explode("\n", $val);
    				$l_str_htmlCode .= "<td class=linktab>";
    				for($j=0;$j<=sizeof($pieces);$j++){
    					$l_str_htmlCode .= "<font class=data_Elem><div>".$pieces[$j]."</div></font>";
    				}
    				$l_str_htmlCode .= "</td>";
      			}
      		$l_str_htmlCode .= "</tr>";
      		$nb++;
      		}
    Voici un exemple de requête test SQL dont le résultat sera affecté à la variable $l_tab_result ci dessus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    -- For SQL Query
    select top 1 convert(varchar(5000),text) from sys.dm_exec_query_stats
    cross apply sys.dm_exec_sql_text(sql_handle)
    -- For Plan Query 
    select top 1 convert(varchar(5000),query_plan) from sys.dm_exec_query_stats
    cross apply sys.dm_exec_text_query_plan(plan_handle,statement_start_offset,statement_end_offset)
    Il apparait alors dans mon tableau html des symboles bizarres (ex : ÞZŒum_o). Si j'augmente le varchar, cela ne change rien. D'ailleurs, quand je lance la requête sur le serveur SQL directement, je n'ai pas de problème.
    J'ai testé aussi avec un champ text à la place du varchar. Les symboles (affichés avec le varchar) disparaissent mais si le résultat de la requête est tronqué sous html.

    Si quelqu'un a une idée, je sais pas par ou prendre le problème

    Merci
    Jeeps64

  2. #2
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 137
    Points : 68
    Points
    68
    Par défaut
    Finalement apres de multiples test, je viens de trouver la solution
    Il suffisait de mettre le parametre odbc.defaultlrl à un nombre tres grand (defaut 4096)
    En gardant mon convert(text,macolonne)

    Jeeps64

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/11/2014, 20h43
  2. [Free Pascal] Affichage d'un texte dans un tableau
    Par jeanmich dans le forum Free Pascal
    Réponses: 12
    Dernier message: 29/12/2008, 12h10
  3. Vider un champ Text dans un tableau
    Par LordDaedalus dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 09/07/2008, 11h39
  4. Réponses: 3
    Dernier message: 05/01/2007, 12h37
  5. Réponses: 2
    Dernier message: 28/11/2006, 11h20

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