Variable fausse

Signaler
Messages postés
278
Date d'inscription
dimanche 13 décembre 2009
Statut
Membre
Dernière intervention
24 juin 2011
-
Messages postés
3708
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
-
hello ,

j'ai un bout de script qui dois en principe a partir de mon site aller sur mon ordi via l'ip et aller chercher une info dans un emplacement:

 require("http://"$ip"\G:\infos.php"); 


mais sa beug, auriez vous une idée please ?

7 réponses

Messages postés
1309
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
5 juin 2013
12
Salut,

Deux remarques :
- La syntaxe est fausse, tu devrais réviser les bases du php, en particulier les sections sur les chaînes de caractères et les opérateurs de chaînes.
- La manière de faire est fausse. Non tu ne peux pas accéder à tous les fichier d'un ordinateur de cette manière (imagine un peu la faille de sécurité sinon...).
Messages postés
278
Date d'inscription
dimanche 13 décembre 2009
Statut
Membre
Dernière intervention
24 juin 2011

alors si ma formule est bonne pourquoi j'ai cette erreur ?

Warning: require(localhost\G:\infos.php) [function.require]: failed to open stream: No such file or directory in /var/www/monsite.fr/htdocs/doss/dossier.php on line 2

Warning: require(localhost\G:\infos.php) [function.require]: failed to open stream: No such file or directory in /var/www/monsite.fr/htdocs/doss/dossier.php on line 2

Fatal error: require() [function.require]: Failed opening required 'localhost\G:\infos.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/monsite.fr/htdocs/doss/dossier.php on line 2


voici mon code
1. <?
2. require("localhost\G:\infos.php");
Messages postés
24
Date d'inscription
mardi 7 mars 2006
Statut
Membre
Dernière intervention
27 décembre 2010

Bon, je vois 2 cas :
- ton site est sur un serveur indépendant de ton PC,
- ton site est hebergé sur ton PC

Je vais considérer le premier cas (j'ai l'impression que c'est le tiens), et que tu n'as jamais fais du web en local.

Il faut que le script soit "en ligne" :

Tu commences par installer quelque chose du genre WampServer ou EasyPHP ... question d'avoir un serveur Apache et PHP.
Une fois installé tu regarde dans le répertoire où l'appli est installé, tu y trouveras un repertoire www, c'est le répertoire "publique", cad la où tu publie (ou met en ligne) les scripts, documents ...
Tu y mettras donc ton script, 'infos.php'.

Lance l'appli.

A cette étape, ton script n'est visible qu'en local, cad que pour toi, sur ton PC, il faut donc le mettre en ligne :
Clique sur l'icone dans la barre des taches (en bas à droite de l'écran), puis clique sur "put online" ou "mettre en ligne" ...


L'accès à ton script :
- En local : http://localhost/infos.php
- De l'extérieur ( et donc pour le serveur ou il y a ton site ) http://ton_ip/infos.php

Donc dans le script, pour récupérer infos.php on aura :
require("http://".$ip."/infos.php"); //Avec $ip la variable contenant ton ip.
Messages postés
278
Date d'inscription
dimanche 13 décembre 2009
Statut
Membre
Dernière intervention
24 juin 2011

Bah sa ma plaire plutot simple et simpas sauf que je coince à ce niveau :

Clique sur l'icone dans la barre des taches (en bas à droite de l'écran), puis clique sur "put online" ou "mettre en ligne" ...


j'ai beau chercher je vois pas du tout ou faire ça .
Pourtant j'ai installé easyphp et mi mon fichier dans le www
Messages postés
278
Date d'inscription
dimanche 13 décembre 2009
Statut
Membre
Dernière intervention
24 juin 2011

enfaite je penses que j'arrive pas a avoir acces a mon fichier, parce que mon resultat c une page blanche mais sans code erreur
Messages postés
278
Date d'inscription
dimanche 13 décembre 2009
Statut
Membre
Dernière intervention
24 juin 2011

le pb doit venir d'ici. voici ma page journal.php voici une partie du code de début

require("http://localhost/infos.php");

if ($_SESSION['co1']=="" && $_SESSION['co2']=="" && $_SESSION['co3']=="" && $_SESSION['co4']=="") {
 header('Location: http://monsite.fr/index.php');
exit;

 }

//on récupère les valeurs des champs   
   $co1 = $_SESSION['co1'];  
   $co2 = $_SESSION['co2'];
   $co3 = $_SESSION['co3'];  
   $co4 = $_SESSION['co4'];


arrivé ici en faite je veux que quand le script de la page journal.php demarre il aille sur la page infos.php (qui est en local via easyphp) afin de prendre des infos.

voici le script de infos.php

<?

session_start(); 

$_SESSION['co1'] = "journal1"; 
$_SESSION['co2'] = "journal2"; 
$_SESSION['co3'] = "journal3"; 
$_SESSION['co4'] = "journal4"; 



?>


dans la logique, sa devrais m'envoyer les valeur de $_SESSION['co1'] $_SESSION['co2'] etc....
quand je mets journal.php sur le serveur(hebergeur) et que je mets require("infos.php"); (qui est dans le même répertoire que journal.php, le script de journal.php s'exécute jusqu'au bout.

mais la, actuellement, avec infos.php sur mon pc avec require("http://localhost/infos.php"); le script de journal.php bloc et s'arrete.
Messages postés
3708
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
27
Salut,

alors si ma formule est bonne pourquoi j'ai cette erreur ?

Où as tu vu que ta formule était bonne ?
Je n'ai lu que des "fausse" moi.

(Pour suivre et avoir suivi d'autres de tes threads)
Tu es encore débutant(e?) et ce n'est en aucun cas péjoratif. Ce qu'il l'est plus en revanche et que tu t'obstines à vouloir faire des choses impossibles (où en tout cas qui demandent une maîtrise que tu n'as semble t-il pas) malgré les remarques de membres bien plus aguerris.
C'est un constat hein, pas une remarque agressive

a partir de mon site aller sur mon ordi via l'ip et aller chercher une info dans un emplacement


Je me permets donc de recopier le message invisible de TychoBrahe :

[b]Deux remarques :
- La syntaxe est fausse, tu devrais réviser les bases du php, en particulier les sections sur les chaînes de caractères et les opérateurs de chaînes.
- La manière de faire est fausse. Non tu ne peux pas accéder à tous les fichier d'un ordinateur de cette manière (imagine un peu la faille de sécurité sinon...).
/b
J'ajouterai tout de même que tu devrais réviser les bases des échanges WEB, en particulier les méthodes POST, GET, PUT, les sockets, les headers HTTP et les redirections.


La façon la plus simple de parvenir à ce que tu souhaites est de monter un serveur WEB sur ton ordi (déjà fait je suppose) et ensuite de faire un simple file_get_contents() du fichier que tu souhaites récupérer sur ton ordi.

Cordialement,

Kohntark -