file_put_contents: Failed to open stream, aucun fichier ou répertoire

Je suis en train d'utiliser dompdf pour enregistrer un formulaire pour un facilement lisible .fichier pdf, et mon script de traitement est ci-dessous. Je reçois l'erreur Warning: file_put_contents(/files/grantapps/NAME0.pdf) [function.file-put-contents]: failed to open stream: No such file or directory in /home/username/public_html/subdir/apps/dompdf/filename.php on line 39. (Ligne 39 est la dernière ligne dans mon script.) Je ne sais pas comment résoudre ce problème.

allow_url_fopen est sur, et j'ai essayé toutes sortes de chemins d'accès de fichier, y compris le répertoire complet (/home/username/public_html/subdir/files/grantapps/) et ce qui est dans le code ci-dessous, mais rien n'a fonctionné.

require_once("dompdf_config.inc.php");
date_default_timezone_set('America/Detroit');

$html = 'code and whatnot is here';

$name = str_replace(" ", "", $_POST['form2name']);
$i = 0;
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
while(file_exists("files/grantapps/" . $name . $i . ".pdf")) {
    $i++;
}
file_put_contents("files/grantapps/" . $name . $i . ".pdf", $dompdf->output());
Pourquoi la boucle while?
Un utilisateur peut soumettre le formulaire plusieurs fois, et, depuis que je suis en utilisant leur nom en tant que nom de fichier, je voulais juste ajouter un numéro à la fin et de sauvegarder chaque fichier avec un nouveau nom de fichier plutôt que de remplacer le fichier existant.
pourquoi ne pas utiliser $dompdf->flux("fichiers/grantapps/" . $nom . $je . ".pdf");
Le stream() fonction provoque le téléchargement du fichier et accepte uniquement un nom de fichier comme paramètre. Je veux enregistrer le fichier sur le serveur web, et d'autres endroits, a déclaré file_put_contents() est la façon de le faire.

OriginalL'auteur vaindil | 2013-02-09