Page 1 sur 1
Guide CGI
Posté : 05 nov. 2007, 20:33
par jed
Bonjour, je dois développer un projet en php cgi. Je connais bien le php5 mais n'ayant (presque) jamais fait de php de cette manière, j'ai plusieurs questions:
-Peut on toujours utiliser les variables $_POST & $_GET ou doit on utiliser $QUERY_STRING?
-Peut on faire de l'objet en cgi?
J'ai cherché pas mal de la doc sur le cgi mais c'est assez restreint.
Posté : 06 nov. 2007, 00:19
par Berzemus
Tu veux dire en CLI ?
ben déjà ça:
http://be.php.net/features.commandline
Et une fonction utile, récupérée dans les commentaires:
function arguments($argv) {
$_ARG = array();
foreach ($argv as $arg) {
if (ereg('--([^=]+)=(.*)',$arg,$reg)) {
$_ARG[$reg[1]] = $reg[2];
} elseif(ereg('-([a-zA-Z0-9])',$arg,$reg)) {
$_ARG[$reg[1]] = 'true';
}
}
return $_ARG;
}
Avec ça, c'est facile, tu tapes:
Code : Tout sélectionner
$ php myscript.php --user=nobody --password=secret -p --access="host=127.0.0.1 port=456"
Et tu obtiens un tableau de ce style:
Code : Tout sélectionner
Array
(
[user] => nobody
[password] => secret
[p] => true
[access] => host=127.0.0.1 port=456
)
Pour le reste, c'est pareil. Moi, j'adore.
Posté : 06 nov. 2007, 09:41
par jed
Non, je ne parle pas de cli que je connais, mais bien du cgi. Les seules chose qui me posent problème sont les questions posées ci-dessus.
Posté : 06 nov. 2007, 10:13
par Berzemus
Au temps pour moi alors, désolé.
Du coup je connais pas non plus..
Posté : 06 nov. 2007, 11:00
par Hubert Roksor
Il n'y a pratiquement aucune différence entre le module Apache et PHP en CGI. Même en cherchant, la seule différence qui me vient à l'esprit c'est éventuellement le chemin contenu dans $_SERVER['SCRIPT_NAME'] ou d'autres variables similaires, qui pourrait être erroné si tu as mal configuré le CGI. Mon conseil : fais un phpinfo() via mod_php5 puis un autre via CGI et compare.
À part ça, pas de problème avec GET/POST/etc...
Posté : 06 nov. 2007, 11:20
par Sékiltoyai
Et tu ne pourras pas utiliser les fonctions d'apache :
http://fr2.php.net/manual/fr/ref.apache.php