Str_replace

Résolu
fredodo13 Messages postés 103 Statut Membre -  
fredodo13 Messages postés 103 Statut Membre -
Bonjour à tous et bon dimanche,

Je bloque sur la fonction str_replace...

Je vous explique, j'ai une redirection htaccess, je récupère dans l'url la variable "ville" qui va me servir à taper dans ma bdd.

Sauf que dans l'url, "ville" peut posséder des tirets et dans ma bdd, "ville" n'a pas de tirets.

Vous avez une idée comment faire ?

Le code original :


<?php
$path="assets/img/villages/";
require_once 'httpRequest/connection.php';
$sql = "SELECT * FROM etablissement where type = 'hotel' AND ville = '".$_GET['ville']."' AND visible='1'";
if($result = mysqli_query($link, $sql)){
if(mysqli_num_rows($result) > 0){
?>
<body id="home" class="homepage">
<section id="content">
<div class="container">
<div class="content">
<div class="container-fluid">

<div class="col-sm-12">
<h1 class = "column-title"><?php echo 'Hôtels à '.ucfirst($_GET['ville']); ?></h1>
<div class="col-sm-8">
<?php
while($row = mysqli_fetch_array($result)){
?>


Merci pour votre temps.

3 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour, qu'as-tu essayé de faire avec la fonction qui te bloque? peux-tu montrer des exemples, et expliquer pourquoi tu n'es pas satisfait?
    0
  2. fredodo13 Messages postés 103 Statut Membre 3
     
    voici :


    <?php
    $path="assets/img/villages/";
    require_once 'httpRequest/connection.php';
    $sql = "SELECT * FROM etablissement where type = 'hotel' AND ville = '".$_GET['ville']."' AND visible='1'";
    $ville = str_replace('-', '', $ville);
    if($result = mysqli_query($link, $sql)){
    if(mysqli_num_rows($result) > 0){
    ?>
    <body id="home" class="homepage">
    <section id="content">
    <div class="container">
    <div class="content">
    <div class="container-fluid">

    <div class="col-sm-12">
    <h1 class = "column-title"><?php echo 'Hôtels à '.ucfirst($_GET['ville']); ?></h1>
    <div class="col-sm-8">
    <?php
    while($row = mysqli_fetch_array($result)){
    ?>
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      par exemple:
      $villesanstiret = str_replace('-', '', $_GET['ville']) ;
      $sql = "SELECT * FROM etablissement where type = 'hotel' AND ville = '" . $villesanstiret . "' AND visible= '1' " ;
      0
      1. fredodo13 Messages postés 103 Statut Membre 3 > yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Toujours pas.....

        il remplace pas les tirets


        <?php
        $path="assets/img/villages/";
        require_once 'httpRequest/connection.php';
        $villesanstiret = str_replace('-', '', $_GET['ville']) ;
        $sql = "SELECT * FROM etablissement where type = 'hotel' AND ville = '" . $villesanstiret . "' AND visible= '1' " ;
        if($result = mysqli_query($link, $sql)){
        if(mysqli_num_rows($result) > 0){
        ?>
        <body id="home" class="homepage">
        <section id="content">
        <div class="container">
        <div class="content">
        <div class="container-fluid">

        <div class="col-sm-12">
        <h1 class = "column-title"><?php echo 'Hôtels à '.ucfirst($_GET['ville']); ?></h1>
        <div class="col-sm-8">
        <?php
        while($row = mysqli_fetch_array($result)){
        ?>
        0
      2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > fredodo13 Messages postés 103 Statut Membre
         
        comment sais-tu qu'il ne supprime pas les tirets? il ne trouve aucun hôtel?
        ajoute
        echo $sql;
        juste avant
        if($result = mysqli_query($link, $sql))
        0
  3. fredodo13 Messages postés 103 Statut Membre 3
     
    ET MERCI !!!

    j'ai vu la requette, il manquant tout simplement un espace dans la fonction str ;)

    pour les prochains, voici le code :


    <?php
    $path="assets/img/villages/";
    require_once 'httpRequest/connection.php';
    $villesanstiret = str_replace('-', ' ', $_GET['ville']) ;
    $sql = "SELECT * FROM etablissement where type = 'hotel' AND ville = '" . $villesanstiret . "' AND visible= '1' " ;
    if($result = mysqli_query($link, $sql)){
    if(mysqli_num_rows($result) > 0){
    ?>


    MERCI YB_BE ! BON DIMANCHE A TOI !!!!
    0