Erreur file_get_contents(): Filename cannot be empty PHP

Résolu
Bonjour, j'ai une erreur "file_get_contents(): Filename cannot be empty"

Je voulais savoir comment faire pour la réglé car je ne vois pas d'où peut venir le problème.

Voici mon code :

<?php

if(!isset($_GET['page']));
{
$link = $_GET['page'];
$page = file_get_contents($link);

$normal = array('eau');
$kikoo = array('o');
$result = str_replace($normal, $kikoo, $page);
print($result);
}

?>

Merci d'avance.

2 réponses

  1. C'est explicite "Filename cannot be empty"

    Il faut vérifier ce que tu as dans $link car avec isset tu vérifies uniquement si ta variable n'est pas null, or, vide ne veut pas dire null ;)

    Fais un var_dump($link); avant ton appel à $page = file_get_contents($link); voir ce qu'il y a dedans
    1
    1. Voici ton code corrigé avec gestion de fichiers inexistant, remplace juste PageParDéfaut ou PageDerreur par une adresse valable.

      ce code ne fonctionne que pour Get des pages internes de ton site, si c'est pour des pages externes, dis le et je te posterai un correctif.

      <?php 
      if(isset($_GET['page'])) {
      $link = $_GET['page'];
      }
      if(!is_file($link)) $link="PageParDéfaut ou PageDerreur"; // a remplacer par l'adresse de la page d'erreur ou d'accueil.
      $page = file_get_contents($link);
      $result = str_replace("eau", "o", $page);
      echo $result;
      ?>
      0
      1. C'est pour les pages EXTERNES d'un site. Merci quand même.
        0
      2. <?php 
        if(isset($_GET['page'])) {
        $link = $_GET['page'];
        }
        if($page = file_get_contents($link)) {
        $result = str_replace("eau", "o", $page);
        echo $result; } 
        else { "Ce que tu veux si le file get ne marche pas" } 
        ?>
        0
      3. Merci.
        0
      4. Juste pour info : autoriser l'inclusion de page externe à ton site peut le rendre vulnérable à différentes failles de sécurité. A utiliser en connaissance de cause.
        0