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 :

[Système] échaper les "


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de scorpking
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    232
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 232
    Par défaut [Système] échaper les "
    voila

    j'ai cette ligne <input type="hidden" value ="'.$query.'" name ="query">
    en php qui sera inclu dans un code html dans ce code html $query contien des " donc quand je veut lire value je n'ai qu'une partie du code comment puije ignorer les "dans $query pour avoir mon texte complet sachant que je ne peux pas les suprimer

  2. #2
    Membre émérite Avatar de MatRem
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 750
    Par défaut
    J'ai l'impression que c'est plus un problème de php ça
    addslashes peut t'aider.

  3. #3
    Membre éclairé Avatar de scorpking
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    232
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 232
    Par défaut
    non déja essayé mais mon code devien un form et malgrer les antislash ma value s'arrete en plein mileu donc antislash marche pas en html

  4. #4
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" value ="'.str_replace('"','\"',$query).'" name ="query" />
    ou


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" value ="'.str_replace('"','\'',$query).'" name ="query" />
    @ tchaOo°

  5. #5
    Membre éclairé Avatar de scorpking
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    232
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 232
    Par défaut
    non non et non il ne le prend pas en compte le backslash
    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
    <?php
    $order = $_POST['orderby'];
    $query1 = 'select , s.study_key "study_key" ,s.study_num "study_num" ,s.protocol_num "protocol_num" ,s.other_num "OtherID" ,st.study_type "study_type" ,\'?\' "ProductLicense" ,decode(s.unblind_ok,1,\'Yes\',\'No\') "EligibleUnblinding" ,decode(s.encoding,1,\'Yes\',\'No\') "StudySpecificAutoEnc" ,s.study_desc "study_desc" ,ac.cond_name "InvestigatorAlert" ,s.blind_name "blind_name" ,d1.name "Drugs" ,d2.name "Indications" ,d3.name "EventTerms" ,decode(s.event_no_manual,1,\'Yes\',\'No\') "PreventManual" ,decode(s.event_closure,1,\'Yes\',\'No\') "RequireEvent"  from lm_studies s ,lm_study_types st ,cfg_adv_cond ac ,cfg_dictionaries d1 ,cfg_dictionaries d2 ,cfg_dictionaries d3 where s.study_type_id = st.study_type_id and s.alert_ac_id = ac.ac_id (+)and s.deleted is null and st.deleted is null and ac.deleted is null and d1.deleted is null and d2.deleted is null and d3.deleted is null and s.drug_dict= d1.dict_id (+) and d1.usage (+) = 1 and s.event_dict = d2.dict_id (+) and d2.usage (+) = 3 and s.indications_dict = d3.dict_id (+) and d3.usage (+) = 2 order by '; 
    $query2=$query1.$order;
    echo '
    <html>
    	<body>';
    	echo $query2 ;
    	echo '<p>';
    	$long =strlen($query2);
    	for($i=0; $i<$long ;$i++)
    	{
    	if($query2[$i] == '"')
    	{
    		$query.='\"';
    	}
    	else
    	{
    		$query.=$query2[$i];
    	}
    	}
    	echo '<p> Use this querie? <form method="post" action="essai2.php4">
    			<input type="hidden" value ="'.$query.'" name ="query">
    		<input type=submit value="ok" name="send">
    		</form>
    	</body>
    </HTML>';
    voila mon code au niveau php pas de problème mais quand je lance mon submit sur ma page le " de study key est pris comme fin de value

    et comme vous pouvez voir j'ai dejà essayé le \



    edit code page receptrice
    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
    <?php
     
    	$query = $_POST['query'];
    	$stid = ociparse($conn, $query);
    	$r = ociexecute($stid, OCI_DEFAULT);
    	$ncols = OCINumCols($stid);
    	echo $query;
    	echo "<TABLE BORDER=1> ";
    	//echo "<THEAD bgcolor=#9A9A9A>
    	//		<TH>case_id</TH>
    	//		<TH>field_id</TH>
    	//		<TH>language_id</TH>
    	//		<TH>seq_num</TH>
    	//		<TH>deleted</TH>
    	//		<TH>text</TH>
    	//	</THEAD> <TBODY>";
    	$count =0;
    	while (OCIFetchInto ($stid, $ligne, OCI_RETURN_NULLS))
    	{
    		echo "<TR>";
    		for ( $i=0 ;$i < $ncols; $i++)
    		{
    			if(trim($ligne[$i])=="")
    			{
    				echo "<TD><FONT color=#CC0066> null </FONT></TD>";
    			}
    				else
    			{
    				echo "<TD> $ligne[$i] </TD>" ;
    			}
    		}
    		echo "</TR> ";
    		$count++;
    	}
    		echo "</table></TBODY>" ;
     
    		echo "<TABLE BORDER=1> 
    				<THEAD>
    					<TH> N-Line </TH>
    				</THEAD>";
    		echo	"<TBODY>";
    		echo"		<TR><TD> $count </TD></TR>";
    		echo"	</TBODY>
    				</TABLE>";
    		echo $query;
    		OCILogoff($conn);
    ?>

  6. #6
    Membre émérite Avatar de MatRem
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 750
    Par défaut
    Ha oui c'est vrai...

    Ben utilise htmlspecialchars

  7. #7
    Membre confirmé Avatar de zoidy
    Inscrit en
    Avril 2006
    Messages
    184
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 184
    Par défaut
    Et en remplaçant les " par les ' et inversement ?

  8. #8
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    Citation Envoyé par scorpking
    non non et non il ne le prend pas en compte le backslash
    [CODE]<?php
    for($i=0; $i<$long ;$i++)
    {
    if($query2[$i] == '"')
    {
    $query.='\\"';
    }

    else

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

Discussions similaires

  1. [MySQL] Recherche FULL TEXT IN BOOLEAN MODE et les Quotes
    Par GarGamel55 dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 23/01/2006, 20h01
  2. [Système] Employer les fonctions systèmes ?
    Par Blo0d4x3 dans le forum API standards et tierces
    Réponses: 6
    Dernier message: 31/12/2005, 14h32
  3. [Infos Système] Récuperer les infos système
    Par Dolphy35 dans le forum Access
    Réponses: 3
    Dernier message: 07/12/2005, 21h20
  4. Formulaires : problème avec les slashes et les quotes
    Par GarGamel55 dans le forum Langage
    Réponses: 1
    Dernier message: 12/10/2005, 15h59
  5. Réponses: 2
    Dernier message: 30/08/2004, 14h48

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