Rechercher : dans
Par :

Executer un script php sans charger le code

Dernière réponse le 28 fév 2008 à 16:11:13 IdleMan, le 22 fév 2008 à 11:23:00 
 Signaler ce message aux modérateurs

Bonjour,
Je ne suis pas un habitué de ce forum , je m'excuse a l'avance si j'ai posté au mauvais endroit ou si la question a deja été posée ( je tiens a préciser que j'ai cherché sur google et sur ce forum une reponse a ma question mais j'ai du taper les mauvais mot clés , je n'ai rien trouvé) .

Ma question est la suivante : Comment executer un script php sans avoir a charger la page ? Ou encore Comment demander au serveur d'executer le script sans l'intervention du client ?

Un exemple : Je veut que mon script vérifie une base de donnée SQL toutes les heures , mais je ne veut pas avoir a revenir toutes les heures pour executer la page sur laquelle se trouve le script ... (ben oui parfois je dors)

J'espere que j'ai été clair dans mon explication ... c'est un probleme tout débile en fait mais je m'arrache les cheveux dessus depuis quelques temps.

Merci de m'avoir lu jusqu'au bout :)

Configuration: Windows XP
Firefox 2.0.0.12

Meilleures réponses pour « Executer un script php sans charger le code » dans :
[Webmaster] Afficher facilement le code php/xhtml de vos pages VoirSi vous voulez proposer a vos visiteurs de voir la source de vos fichiers (PHP ou HTML), il y a plusieurs solutions. En php Afficher le code php Afficher le code html En html Informations Voir aussi En php Afficher le code php La...
Implantation du code Php VoirL'interprétation du code par le serveur Un script PHP est un simple fichier texte contenant des instructions écrites à l'aide de caractères ASCII 7 bits (des caractères non accentués) incluses dans un code HTML à l'aide de balises spéciales et...

1

IdleMan, le 22 fév 2008 à 21:58:06
  • +1

Un ptit up désolé .

Répondre à IdleMan

2

le père, le 22 fév 2008 à 22:32:37

Bonsoir

Pourquoi ne veux-tu pas de l'intervention d'un client ? Il y a des 'clients automatiques' qui font ça très bien même quand tu dors ou que tu pars en vacances. Exemple gratuit : webcron.org.

Répondre à le père

3

IdleMan, le 26 fév 2008 à 11:49:00
  • +1

Merci pour ta réponse :)
hé bien j'aimerais ne pas avoir a passer par un client tout simplement parce que ça ne fais pas pro et que je pense q u'il y a un moyen que le script s'execute tout seul , de plus j'ai besoin que le script s'executes a heures variables en fonction du nombre de visiteurs presents sur mon site et de plusieurs autres facteurs aleatoires , bref il faut que je puisse configurer les lancements du script a partir de mon script et non a partir d'un service comme webcron.org

il dois bien y avoir une fonction php ou javascript (ou autre) qui permet a php de se lancer sans l'intervention du client .

Répondre à IdleMan

4

Reivax962, le 26 fév 2008 à 12:17:24

Bonjour,

Une fonction php, je vois mal comment, puisque elle même doit bien être appelée... Une fonction JavaScript, aucune chance puisque justement JavaScript est côté client.

Ceci dit, tu peux trouver dans ton répertoire d'installation de php un exécutable, php.exe

Tu peux l'utiliser directement en utilisant la commande suivante :
php.exe -f nomFichier.php

Pour plus de possibilités, tape php -?

Exemples de résultats, dans une fenêtre de commande :

E:\Program Files\wamp\bin\php\php5.2.5>php.exe -?
Usage: php [options] [-f] <file> [--] [args...]
       php [options] -r <code> [--] [args...]
       php [options] [-B <begin_code>] -R <code> [-E <end_code>] [--] [args...]
       php [options] [-B <begin_code>] -F <file> [-E <end_code>] [--] [args...]
       php [options] -- [args...]
       php [options] -a

  -a               Run interactively
  -c <path>|<file> Look for php.ini file in this directory
  -n               No php.ini file will be used
  -d foo[=bar]     Define INI entry foo with value 'bar'
  -e               Generate extended information for debugger/profiler
  -f <file>        Parse and execute <file>.
  -h               This help
  -i               PHP information
  -l               Syntax check only (lint)
  -m               Show compiled in modules
  -r <code>        Run PHP <code> without using script tags <?..?>
  -B <begin_code>  Run PHP <begin_code> before processing input lines
  -R <code>        Run PHP <code> for every input line
  -F <file>        Parse and execute <file> for every input line
  -E <end_code>    Run PHP <end_code> after processing all input lines
  -H               Hide any passed arguments from external tools.
  -s               Display colour syntax highlighted source.
  -v               Version number
  -w               Display source with stripped comments and whitespace.
  -z <file>        Load Zend extension <file>.

  args...          Arguments passed to script. Use -- args when first argument
                   starts with - or script is read from stdin

  --ini            Show configuration file names

  --rf <name>      Show information about function <name>.
  --rc <name>      Show information about class <name>.
  --re <name>      Show information about extension <name>.
  --ri <name>      Show configuration for extension <name>.

Exemple d'appel à une page php, cette fois.
page test.php
<?php
	echo "Hello World";
?>
Et le résultat :
E:\Program Files\wamp\bin\php\php5.2.5>php -f test.php
Hello World
Voilà !

Ensuite, tu peux mettre ça en batch si tu as plusieurs appels à faire, et placer tout çs dans un cron ou dans le planificateur de tâche windows...

Xavier

Répondre à Reivax962

5

IdleMan, le 27 fév 2008 à 10:46:48

Bonjour,
Houla ^^ Je n'y connais rien en dehors du php (et encore le php je connais juste les bases) .

Dans quoi dois je taper toutes ces commandes ?

Que dois je mettre dans le fichier php.exe?

Ou dois je placer le fichier php.exe ? Sur mon ftp ? Je ne suis pas sur qu'on puisse executer de fichier .exe sur les ftp free .

Bref part du principe que je suis un parfait neophyte et que je n'ai pas compris un mot de ce que tu a dis ^^ Y aurais t'il moyen d'avoir une "notice pour les nuls" ? :D

Merci infiniment pour ta reponse , meme si j'ai rien compris ya un debut de piste :)

Répondre à IdleMan

6

Reivax962, le 27 fév 2008 à 11:58:42

Alors, pour répondre à tout ça.

1 - php.exe existe déjà sur tout serveur php, puisque c'est le programme php lui-même. Pas besoin, donc d'y mettre quoi que ce soit.

2 - Toutes ces commandes, il faut les taper dans la fenêtre de commandes windows. Sous Windows XP, que tu as, il faut faire Démarrer -> Exécuter -> cmd, puis utiliser la commande "cd" qui permet de changer de répertoire, jusqu'à trouver celui du répertoire php : cd "program files\wamp\bin\php", par exemple. Là, tu peux taper les commandes.
Tu peux aussi rester sur c:\ à la racine, et taper "program files\wamp\bin\php\php.exe" -f ..\..\www\test.php

3 - Il ne faut pas déplacer ce php.exe. Si tu es sur Free, ou un autre hébergeur sur lequel tu n'as pas de contrôle, effectivement cette solution ne sera pas viable car tu n'auras vraisemblablement pas accès à l'exécutable php...

Je pense que dans ton cas, l'idéal serait de demander au support de free s'il y a moyen de mettre en place un Cron, ou une tache planifiée, ou un accès à php.exe pour effectuer ces commandes... Mais j'en doute...

Xavier

Répondre à Reivax962

7

le père, le 27 fév 2008 à 13:31:53

Si tu es sur Free, ou un autre hébergeur ... then goto 2 :D

Répondre à le père

8

IdleMan, le 27 fév 2008 à 16:56:13

Je suis sur free :( , le cas echeant je peut me mettre sur 1and1 .

Pour taper les commandes il faut avoir installé wamp en fait ?

Répondre à IdleMan

9

Reivax962, le 27 fév 2008 à 17:07:29

Le problème sera le même sur 1 and 1. En fait, à moins d'avoir ton serveur à toi sur lequel tu as tous pouvoirs, tu ne pourras pas t'en sortir. La meilleure solution reste donc celle de Le Père au message 2.

>Pour taper les commandes il faut avoir installé wamp en fait ?

Non non. Ceci était un exemple, parce que sur ma machine c'est wamp que j'ai ^^
Mais wamp, finalement, ce n'est qu'un package qui installe plusieurs composants, dont le serveur php.
Ce qu'il faut c'est juste avoir ce serveur php, que ce soit avec wamp, lamp, easyphp ou directement l'application php hors package.
Évidemment, le chemin d'accès à l'exécutable dépend de ce que tu as installé, mais tu trouveras toujours ce php.exe !

Répondre à Reivax962

10

 IdleMan, le 28 fév 2008 à 16:11:13
  • +2

Oki , merci pour toutes ces précisions , il n'y a donc aucun moyen d'executer des scripts php par le serveur sans posseder sois même le serveur .
Moi qui croyais que le net était sans limites et qu'il ne pouvais pas évoluer d'avantage :) il vas falloir que j'attende que quelque créé une commande php genre server_exe(page.php,date,frequence) ;

Je vais me faire cryogeniser je vous retrouve dans quelques années :D .

Merci encore pour vos réponses.

Répondre à IdleMan