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 :

convertir texte html en texte brut


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2017
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2017
    Messages : 12
    Par défaut convertir texte html en texte brut
    Bonjour,
    J'ai ce script pour faire mes recherches et je souhaite convertir à ce niveau là : echo '#'.$data->title.'<br/>'; (ligne 40) les sorties title en texte brut mais je me pédale parce que je débute avec l'objet !
    Merci

    Code php : 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
     
    <?php 
    	$resultats = "";
    	$nbreParametres = 2; 
    	if(isset($_POST['query']) && !empty($_POST['query'])){
    		$query = preg_replace("#[^a-z ?0-9]#i", "", $_POST['query']);
    		if($_POST['filtre'] == "Site entier"){
    			$nbreParametres = 4;
    			$sql = "(SELECT id, donnees AS title FROM table1 WHERE donnees LIKE ? OR promo LIKE ?) UNION (SELECT id, titre AS title FROM table2 WHERE titre LIKE ? OR titre_meta LIKE ?)";
    		} else if($_POST['filtre'] == "Contenu") {
    			$sql = "SELECT id,donnees AS title FROM table1 WHERE donnees LIKE ? OR promo LIKE ?";
    		} else if($_POST['filtre'] == "L ien pages") {
    			$sql = "SELECT id, titre AS title FROM table2 WHERE titre LIKE ? OR titre_meta LIKE ?";
    		}
    		include("includes/connect_db.php");
    		$req = $db->prepare($sql);
    		if($nbreParametres == 2){
    			$req->execute(array('%'.$query.'%', '%'.$query.'%'));	
    		} else {
    			$req->execute(array('%'.$query.'%', '%'.$query.'%', '%'.$query.'%', '%'.$query.'%'));	
    		}
    		$count = $req->rowCount();
    		if($count >= 1){
    			echo "$count résultat(s) trouvé(s) pour <strong>$query</strong><hr/>";
    			while($data = $req->fetch(PDO::FETCH_OBJ)){
     
    			// Convertit un texte HTML en texte brut
    			/*function textebrut($texte) {
    			$texte = ereg_replace("[\n\r]+", " ", $texte);
    			$texte = eregi_replace("< (p|br)([[:space:]][^>]*)?".">", "\n\n", $texte);
    			$texte = ereg_replace("^\n+", "", $texte);
    			$texte = ereg_replace("\n+$", "", $texte);
    			$texte = ereg_replace("\n +", "\n", $texte);
    			$texte = supprimer_tags($texte);
    			$texte = ereg_replace("( | )+", " ", $texte);
    			return $texte;
    			}*/
     
     
    				echo '#'.$data->id.'<br/>';
    				echo '#'.$data->title.'<br/>';
     
     
     
    			}
    			echo '<hr/>';
    		} else {
    			echo "0 résultat trouvé pour <strong>$query</strong><hr/>";
    		}
    	}
    ?>

  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
    Je ne vois pas bien ce que vient faire "l'objet" dans ton problème.
    Est-ce que ta fonction supprimer_tags() ne serait pas là justement pour empecher la mise en forme HTML ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2017
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2017
    Messages : 12
    Par défaut
    Quand je met ce code
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    			// Convertit un texte HTML en texte brut
    			/*function textebrut($texte) {
    			$texte = ereg_replace("[\n\r]+", " ", $texte);
    			$texte = eregi_replace("< (p|br)([[:space:]][^>]*)?".">", "\n\n", $texte);
    			$texte = ereg_replace("^\n+", "", $texte);
    			$texte = ereg_replace("\n+$", "", $texte);
    			$texte = ereg_replace("\n +", "\n", $texte);
    			$texte = supprimer_tags($texte);
    			$texte = ereg_replace("( | )+", " ", $texte);
    			return $texte;
    			}*/
    le script plante, et ne fonctionne pas. Là je l'ai mis en commentaire, je ne sais pas comment l'appliquer sur cette partie du code : echo '#'.$data->title.'<br/>';

  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
    Tu as une donnée 'title' qui est en HTML et tu veux avoir uniquement le texte brut c'est bien ça ?

    est-ce que ce n'est pas ton fonction supprimer_tags() qui doit faire ça ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2017
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2017
    Messages : 12
    Par défaut
    En fait la fonction supprimer_tags($texte); je l'ai récupérée sur internet mais ça ne fonctionne pas, comment puis-je faire ?
    J'ai bien une donnée 'title' qui est en HTML et je veux avoir uniquement le texte brut, c'est bien ça.

  6. #6
    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 : 40
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Tu as essayé la fonction native strip_​tags ?
    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]

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

Discussions similaires

  1. Convertir du code HTML en texte brut
    Par arnaudperfect dans le forum Langage
    Réponses: 2
    Dernier message: 18/08/2008, 22h51
  2. HTML et Texte brut
    Par Truuuc dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 04/09/2007, 20h06
  3. Convertir du HTML en TEXT
    Par Najdar dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 16/10/2006, 17h44
  4. [POO] newsletter html ou text brut
    Par towogy dans le forum Langage
    Réponses: 3
    Dernier message: 23/08/2006, 10h57
  5. Réponses: 3
    Dernier message: 09/03/2006, 11h29

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