Richiamare un file

Raga per richiamare un file esistente in php che è in una nuova directory, come lo richiamo in una pagina ?

Ho provato scrivendo

<?php $file = "";  @include("utentionline/online.php");?>

Ma non si vede

 :bye:

inviato 10 anni fa
eternity
X 0 X
risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Nulla non funzia  :o

risposto 10 anni fa
eternity
X 0 X

Che errori ricevi?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Nulla in bello è questo.

Allora per capirci bene vai al mio sito che trovi nella firma.

Dove ci sta CIAO (ILTUOIP) dopo ci deve essere un file <?php include ".../utentionline/online.php"; ?> a cui dice quanti visitatori sono on line.

risposto 10 anni fa
eternity
X 0 X

E' strano, avresti dovuto ricevere un WARNING  :(

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Il file funzia perchè se lo guardo da solo vedo quanti utenti sono collegati

Ho provato con un iframe ma ho il problema che con firefox riesco a vederlo e con explorer non lo vedo

risposto 10 anni fa
eternity
X 0 X

Il problema si verifica solo in remoto oppure anche sul tuo PC?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Sul mio computer non posso provarlo perchè non so perchè ma EasyPHP non mi fa partire mysql

Sul mio spazio web se apro solo il file online.php vedo gli utenti collegati e se lo inserisco nella pagina con il  codice qua sopra, non si vede.

risposto 10 anni fa
eternity
X 0 X

Forse è il caso di lasciar perdere easyphp e di imparare ad installare tutto manualmente  :coolsmiley:

Se non fai girare i tuoi script in un "ambiente controllato" sarà difficile riuscire a trovare e correggere gli errori.

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Scusate ragazzi ma il carattere "@" davanti alla funzione dovrebbe inibire la visualizzazione degli errori, giusto? Se è così, scrivendo

...

<?php $file = "";  @include("utentionline/online.php");?>

...

non si dovrebbero visualizzare gli errori!

 :bye:

risposto 10 anni fa
Nico Colonna
X 0 X

Forse è il caso di lasciar perdere easyphp e di imparare ad installare tutto manualmente  :coolsmiley:

Se non fai girare i tuoi script in un "ambiente controllato" sarà difficile riuscire a trovare e correggere gli errori.

 :bye:

Puoi dirmi cosa devo fare per favore? :bye:

risposto 10 anni fa
eternity
X 0 X

Hai provato a togliere la '@' davanti all'include ( come consigliato da fred)?

Se non l'hai fatto, prova e vedi se ti restituisce qualche errore...

ciao

risposto 10 anni fa
Lore
Lore
1
X 0 X

Si ma non funzia ugualmente  :(

risposto 10 anni fa
eternity
X 0 X

hai provato a mettere

error_reporting(E_ALL);

all'inizio dello script?per vedere se hai qualche errore o notice che può interferire con lo script...

PS lo script che includi ha per caso qualche 'comando'

exit(); ? perchè è una funzione che non ti fa eseguire il codice che viene dopo ...

cmq magari ti conviene postare il codice dell'include, così può essere + chiaro il tutto..

ciao

risposto 10 anni fa
Lore
Lore
1
X 0 X

Mi esce fuori

Warning: main(): open_basedir restriction in effect. File(/sito/utentionline/online.php) is not within the allowed path(s): (/membri) in /membri/eternityphp/sito/index.php on line 88

Warning: main(/sito/utentionline/online.php): failed to open stream: Operation not permitted in /membri/eternityphp/sito/index.php on line 88

Warning: main(): Failed opening '/sito/utentionline/online.php' for inclusion (include_path='.:') in /membri/eternityphp/sito/index.php on line 88

risposto 10 anni fa
eternity
modificato 10 anni fa
X 0 X

Un paio di cose:

-prova a commentare

if (!file_exists($file))

 exit("Il file non esiste");

- togli tutte le '@' da davanti le funzioni

[ la '@' fa si che 'NON vengano visualizzati gli errori',quindi anche se un'operazione (ex fwrite), non va a buon termine, non te lo segnala]

-per ultima cosa, se le altre due non hanno fatto uscire nessun errore, prova a commentare tutto il file e piano piano decommenti i vari pezzi vedendo quello che da problemi, oppure se hai zend o un programma che te lo permetta, fa i il debug...

fa' sapere...

ciao

risposto 10 anni fa
Lore
Lore
1
X 0 X

Un paio di cose:

-prova a commentare

if (!file_exists($file))

 exit("Il file non esiste");

- togli tutte le '@' da davanti le funzioni

[ la '@' fa si che 'NON vengano visualizzati gli errori',quindi anche se un'operazione (ex fwrite), non va a buon termine, non te lo segnala]

-per ultima cosa, se le altre due non hanno fatto uscire nessun errore, prova a commentare tutto il file e piano piano decommenti i vari pezzi vedendo quello che da problemi, oppure se hai zend o un programma che te lo permetta, fa i il debug...

fa' sapere...

ciao

Dove trovo questo programma zend?

risposto 10 anni fa
eternity
X 0 X

sul sito ci dovrebbe essere, ma è a pagaento:

http://www.zend.com/

cmq ho visto che hai modificato il pos sopra, naturalmente quello che ti consigliavo si riferiva al codice che c'era scritto... ;)

CMQ per open_basedir, se fai

<?php

phpinfo();

?>

vedi i settaggi del tuo server, il problema che hai dovrebbe essere dato dal safe_mode settato a 'on', se non ricordo male...

ciao

[EDIT] aggiungo a quanto detto prima:

http://freephp.html.it/articoli/view_articolo.asp?id=72&pag=4

risposto 10 anni fa
Lore
Lore
1
modificato 10 anni fa
X 0 X

Riporto quanto scritto nel php.ini a proposito della direttiva open_basedir:

; open_basedir, if set, limits all file operations to the defined directory

; and below.  This directive makes most sense if used in a per-directory

; or per-virtualhost web server configuration file. This directive is

; *NOT* affected by whether Safe Mode is turned On or Off.

;open_basedir =

In pratica se la direttiva open_basedir è abilitata si possono maneggiare SOLO i files presenti nella cartella specificata dalla direttiva stessa e nelle sottocartelle contenute. Tale direttiva inoltre NON è influenzata dal Safe Mode.

l'errore che hai ricevuto dice proprio che stai cercando di accedere ad un file che è al difuori della cartella "/membri"

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda