Pregunta

Normalmente uso esta línea para importar archivos desde la carpeta actual y funciona bien en mi servidor host local

require("../DataBase.class.php"); 

pero cuando subo el script en mi sitio web recibo esta Advertencia

  

Advertencia:   incluir (../ DataBase.class.php)   [function.include]: error al abrir   transmisión: No existe tal archivo o directorio

¿Fue útil?

Solución

El modo seguro no le gusta " ../" ;. Así que siempre debes usar algo como

require_once realpath(dirname(__FILE__) . '/..') . '/file.php';

Otros consejos

Lo que probablemente está sucediendo es que su configuración de include_path en php.ini es diferente en su servidor que en su instalación local de PHP / Apache. Junto con esto, tenga en cuenta que ../ no apunta al directorio actual en el que se encuentra el archivo, apunta al directorio principal del directorio actual en el que se encuentra. Lo que recomendaría es encontrar la ruta completa a la raíz de su documento, luego incluya sus archivos de esta manera:

<?php

$full_path = "/var/www/htdocs"; // this should be your website's full path
require( $full_path . "/DataBase.class.php" );

?>

Está buscando el archivo en el directorio principal. Si lo desea en el directorio actual, use:

require 'Database.class.php';

Quizás en su servidor web local tenga una copia en su directorio principal por alguna razón que no existe en su servidor remoto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top