faculd
Messages postés8Date d'inscriptionlundi 3 mai 2004StatutMembreDernière intervention29 janvier 2008 25 févr. 2007 à 18:47
package (on dirait linux), librairie (on dirait c/c++), classe (on dirait php :p ) dans son utilité, moi je dirait que c'est un moteur de template...
Excellent!
Au plaisir,
Steph666
Messages postés74Date d'inscriptionjeudi 6 mars 2003StatutMembreDernière intervention 5 juin 2008 14 déc. 2005 à 11:41
Petit ajout d''exemple
Steph666
Messages postés74Date d'inscriptionjeudi 6 mars 2003StatutMembreDernière intervention 5 juin 2008 14 nov. 2003 à 17:29
Oui c le mode secure, c une configuration côté serveur qui permet de passer par le port 443 (sécurisé) au lieu du port 80 en SSL.
Ajouté à cela le poste client doit accepter un certificat.
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 12 nov. 2003 à 16:05
https c'est le mode secure c'est ça?
comment tu fais pr obtenir un site en https, c'est par rapport au serveur ?
Steph666
Messages postés74Date d'inscriptionjeudi 6 mars 2003StatutMembreDernière intervention 5 juin 2008 12 nov. 2003 à 14:57
Voici la liste des fonctions pour toi Kirua, en espérant que cette fois-ci cela corresponde à tes attentes lol.
Des commentaires plus explicites sont à venir pour bien expliquer la classe, suivant vos remarques
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 5 nov. 2003 à 14:40
bah, c'est pas le code qu'on voulait, (en tt cas que je voulais) c t un récapitulatif des fonctionnalitées, pour qu'on puisse te dire ce que tu pourrais ajouter ;-)
Steph666
Messages postés74Date d'inscriptionjeudi 6 mars 2003StatutMembreDernière intervention 5 juin 2008 5 nov. 2003 à 10:41
En effet les connaisseurs reconnaitront, l'esprit perl, en effet je me suis inspiré de la classe perl.
Ceci n'est que la version 1, j'attends donc vos commentaires.
Et voici le code directement pour les feignants (lol)
<?
/***********************************
** Auteur : Stéphane Etcheto **
** Version 1.0 **
** 04/01/2003 **
** Pour tout bug, toutes **
** améliorations, et toutes **
** utilisations merci de **
** m'écrire à stef_64_fr@yahoo.fr **
***********************************/
class HTML {
/*
ici ordre et séparateur peuvent être
changés suivant l'envie de l'utilisateur
*/
var $ordre, $separateur = "::";
var $_Tattributs = array("name", "value", "class", "style", "lang", "title", "size", "maxlength", "wrap", "accept", "other", "src", "label", "defaut", "vertical", "cols", "rows", "multiple");
function start_html($titre "Untitled Document", $script "", $style = "", $head = "", $meta = "", $base = "", $target = "", $author = "", $lang = "", $noscript = "") {
if ($lang) $lang = " lang="$lang"";
if ($author) $author = "<link rev="MADE" href="mailto:$author">
";
if ($base) {
if ($target) $target = " target="$target"";
$base = "
";
}
if ($meta) {
foreach ($meta as $key => $value) $metas .= "<meta name="$key" content="$value">
";
}
if ($script) $script = $this->js($script, 1);
if ($style) $style = $this->css($style, 1);
if ($noscript) $noscript = "<noscript>$noscript</noscript>
";
function end_html($corps = "") {
return $corps."
</html>";
}
/**************** Usage ****************
**
** text("name::monnom", "value::mavaleur", "class::maclass", "lang::malang", "maxlength::masaisie", "size::mataille", "title::montitre", "style::monstyle", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** text("monnom", "mavaleur", "mataille", "masaisie", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important à respecter
**
***************************************/
function text() {
$param = func_get_args();
array_unshift($param, "text");
$this->ordre = array(0, 1, 2, 3, 4, 5, 6, 7, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** pwd("name::monnom", "value::mavaleur", "class::maclass", "lang::malang", "maxlength::masaisie", "size::mataille", "title::montitre", "style::monstyle", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** pwd("monnom", "mavaleur", "mataille", "masaisie", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function pwd() {
$param = func_get_args();
array_unshift($param, "password");
$this->ordre = array(0, 1, 2, 3, 4, 5, 6, 7, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** upload("name::monnom", "value::mavaleur", "class::maclass", "lang::malang", "accept::maaccept", "size::mataille", "title::montitre", "style::monstyle", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** upload("monnom", "mavaleur", "maaccept", "mataille", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function upload() {
$param = func_get_args();
array_unshift($param, "file");
$this->ordre = array(0, 1, 9, 6, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** res("value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** res("mavaleur", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function res() {
$param = func_get_args();
array_unshift($param, "reset");
$this->ordre = array(1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** button("name::monnom", "value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** button("monnom", "mavaleur", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function button() {
$param = func_get_args();
array_unshift($param, "button");
$this->ordre = array(0, 1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** submit("value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** submit("mavaleur", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function submit() {
$param = func_get_args();
array_unshift($param, "submit");
$this->ordre = array(1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** hidden("name::monnom", "value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** hidden("monnom", "mavaleur", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function hidden() {
$param = func_get_args();
array_unshift($param, "hidden");
$this->ordre = array(0, 1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** img_but("name::monnom", "src::masource", "value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "align::monalign", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** img_but("monnom", "masource", "mavaleur", "maclass", "monstyle", "malang", "montitre", "monalign", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function img_but() {
$param = func_get_args();
array_unshift($param, "image");
$this->ordre = array(0, 11, 1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** check("name::monnom", "value::mavaleur", "label::monlabel", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** check("monnom", "mavaleur", "monlabel", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function check() {
$param = func_get_args();
$input "ordre array(0, 1, 12, 2, 3, 4, 5, 10);
// Récupération les paramètres de la page
// Usage $html->param() => Récupère tous les paramètres de la page soumise
// $html->param('monparam') => Récupère le paramètre 'param' de la page soumise
function param($param = "") {
if ($param) {
$panam = $GLOBALS["$param"];
return $panam;
} else {
$param = array();
if ($GLOBALS["REQUEST_METHOD"] == 'GET') {
foreach ($GLOBALS["HTTP_GET_VARS"] as $name => $value) {
$param[$name] = $value;
}
} else {
foreach ($GLOBALS["HTTP_POST_VARS"] as $name => $value) {
$param[$name] = $value;
}
}
}
return $param;
}
// Change le séparateur pour les fonctions input par défaut c'est ::
function set_separateur() {
$param = func_get_args();
if ($param) $this->separateur = $param[0];
}
// Récupère l'url de la page en cours
function url() {
return "http://".$GLOBALS["HTTP_HOST"].$GLOBALS["SCRIPT_NAME"];
}
}
?>
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 5 nov. 2003 à 08:03
okok, mais on peut écrire des CGI en d'autres langages aussi, mais c'est vrai qu'on entend surtout parler du perl et du C++ pour ça.
mais un ensemble de fonctions, étant donné qu'ici c'est une classe, on dira plus volontier une librairie je pense, ténue mais librairie qd meme. je ne sais pas exactement ce qui fait la différence entre une librairie et un package, c'est une impression que j'ai. Peut être le fait que le package soit compilé? (dans le cas des CGI)
flashfun
Messages postés296Date d'inscriptionmercredi 10 septembre 2003StatutMembreDernière intervention11 septembre 2004 4 nov. 2003 à 23:41
oupss!
Je voulais écrire package.
C'est en PERL, c'est une sorte de fichier qui contient beaucoup de programme.
Il y en a un pour écrire des pages html.
Par exemple, à la place d'écrire :
<html><head>Titre</head>
On écrit :
start_html("Titre");
Le nom de la fonction n'est pas éxsact, mais c'est un peut près ca.
Il y en a pour toutes les balises normalisé. ( p("paragraphe"); ...)
Je commence tous juste le perl à l'iut, je regarderais mes cours si tu veux quelquechose de très précis.
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 4 nov. 2003 à 22:19
c'est quoi un pachage? explique moi stp :-)
flashfun
Messages postés296Date d'inscriptionmercredi 10 septembre 2003StatutMembreDernière intervention11 septembre 2004 4 nov. 2003 à 20:51
C'est comme un pachage CGI ???
TiotBour
Messages postés103Date d'inscriptionsamedi 21 décembre 2002StatutMembreDernière intervention 5 janvier 20071 4 nov. 2003 à 19:58
idem :)
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 4 nov. 2003 à 16:42
dans le champ de code tu pourrais mettre un récapitulatif de tout ce qui est géré dans ton code, j'ai la flemme de télécahrger le zip pour voir ça, et puis je pense que je serai pas le seul ;-)
25 févr. 2007 à 18:47
Excellent!
Au plaisir,
14 déc. 2005 à 11:41
14 nov. 2003 à 17:29
Ajouté à cela le poste client doit accepter un certificat.
12 nov. 2003 à 16:05
comment tu fais pr obtenir un site en https, c'est par rapport au serveur ?
12 nov. 2003 à 14:57
start_html($titre "Untitled Document", $script "", $style = "", $head = "", $meta = "", $base = "", $target = "", $author = "", $lang = "", $noscript = "") {
}
js($js, $fic = 0) {
}
css($css, $fic = 0) {
}
start_body($corps "", $balise "") {
}
start_form($corps "", $balise "", $name = "", $method = "post", $action = "", $enctype = "application/x-www-form-urlencoded", $class = "", $style = "", $target = "", $accept = "", $accept_charset = "", $title = "", $lang = "") {
}
end_form() {
}
end_html($corps = "") {
}
text() {
}
pwd() {
}
upload() {
}
res() {
}
button() {
}
submit() {
}
hidden() {
}
img_but() {
}
check() {
}
radio() {
}
input() {
}
textarea() {
}
popup() {
}
param($param = "") {
}
set_separateur() {
}
url() {
}
un petit changement tout de même ds le contenu de 2 fonctions, pour ceux qui le souhaite :
- function start_form : changer
if (!$action) $action = " action="http://".$GLOBALS["HTTP_HOST"].$GLOBALS["SCRIPT_NAME"]."$query"";
else $action = " action="".$action.""";
par
if (!$action) {
if (isset($GLOBALS["HTTPS"]) && $GLOBALS["HTTPS"] == "on") $protocol = "https";
else $protocol = "http";
$action = " action="".$protocol."://".$GLOBALS["HTTP_HOST"].$GLOBALS["SCRIPT_NAME"]."$query"";
} else $action = " action="".$action.""";
- dans la fonction url : changer
return "http://".$GLOBALS["HTTP_HOST"].$GLOBALS["SCRIPT_NAME"];
par
if (isset($GLOBALS["HTTPS"]) && $GLOBALS["HTTPS"] == "on") $protocol = "https";
else $protocol = "http";
return $protocol."://".$GLOBALS["HTTP_HOST"].$GLOBALS["SCRIPT_NAME"];
Des commentaires plus explicites sont à venir pour bien expliquer la classe, suivant vos remarques
5 nov. 2003 à 14:40
5 nov. 2003 à 10:41
Ceci n'est que la version 1, j'attends donc vos commentaires.
Et voici le code directement pour les feignants (lol)
<?
/***********************************
** Auteur : Stéphane Etcheto **
** Version 1.0 **
** 04/01/2003 **
** Pour tout bug, toutes **
** améliorations, et toutes **
** utilisations merci de **
** m'écrire à stef_64_fr@yahoo.fr **
***********************************/
class HTML {
/*
ici ordre et séparateur peuvent être
changés suivant l'envie de l'utilisateur
*/
var $ordre, $separateur = "::";
var $_Tattributs = array("name", "value", "class", "style", "lang", "title", "size", "maxlength", "wrap", "accept", "other", "src", "label", "defaut", "vertical", "cols", "rows", "multiple");
function start_html($titre "Untitled Document", $script "", $style = "", $head = "", $meta = "", $base = "", $target = "", $author = "", $lang = "", $noscript = "") {
if ($lang) $lang = " lang="$lang"";
if ($author) $author = "<link rev="MADE" href="mailto:$author">
";
if ($base) {
if ($target) $target = " target="$target"";
$base = "
";
}
if ($meta) {
foreach ($meta as $key => $value) $metas .= "<meta name="$key" content="$value">
";
}
if ($script) $script = $this->js($script, 1);
if ($style) $style = $this->css($style, 1);
if ($noscript) $noscript = "<noscript>$noscript</noscript>
";
return "<html$lang>
<head>
<title>$titre</title>
$author$base$metas$script$style$noscript$head</head>
";
}
function js($js, $fic = 0) {
$script = "";
if (!$fic) {
$script .= "<script language="Javascript">".$js."</script>
";
} else {
$param = split(",", $js);
foreach ($param as $val) {
$script .= "<script language="Javascript" src="$val"></script>
";
}
}
return $script;
}
function css($css, $fic = 0) {
$script = "";
if (!$fic) {
$script .= "<style type="text/css">".$css."</style>
";
} else {
$param = split(",", $css);
foreach ($param as $val) {
$script .= "<link rel="stylesheet" href="$val" type="text/css">
";
}
}
return $script;
}
function start_body($corps "", $balise "") {
return "
".$corps;
}
function start_form($corps "", $balise "", $name = "", $method = "post", $action = "", $enctype = "application/x-www-form-urlencoded", $class = "", $style = "", $target = "", $accept = "", $accept_charset = "", $title = "", $lang = "") {
if ($balise) $balise = " $balise";
if ($method) $method = " method="$method"";
if ($name) $name = " name="".$name.""";
if ($GLOBALS["QUERY_STRING"]) $query = "?".$GLOBALS["QUERY_STRING"]."";
else $query = "";
if ($class) $class = " class="".$class.""";
if ($style) $style = " style="".$style.""";
if ($target) $target = " target="".$target.""";
if ($accept) $accept = " accept="".$accept.""";
if ($accept_charset) $accept_charset = "accept_charset="".$accept_charset.""";
if ($title) $title = " title="".$title.""";
if ($lang) $lang = " lang="".$lang.""";
if (!$action) $action = " action="http://".$GLOBALS["HTTP_HOST"].$GLOBALS["SCRIPT_NAME"]."$query"";
else $action = " action="".$action.""";
if ($enctype) $enctype = " enctype="$enctype"";
$form = "$name$method$action$enctype$balise$class$style$target$accept$accept_charset$title$lang";
return "<form$form>
".$corps;
}
function end_form() {
return "</form>
";
}
function end_html($corps = "") {
return $corps."
</html>";
}
/**************** Usage ****************
**
** text("name::monnom", "value::mavaleur", "class::maclass", "lang::malang", "maxlength::masaisie", "size::mataille", "title::montitre", "style::monstyle", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** text("monnom", "mavaleur", "mataille", "masaisie", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important à respecter
**
***************************************/
function text() {
$param = func_get_args();
array_unshift($param, "text");
$this->ordre = array(0, 1, 2, 3, 4, 5, 6, 7, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** pwd("name::monnom", "value::mavaleur", "class::maclass", "lang::malang", "maxlength::masaisie", "size::mataille", "title::montitre", "style::monstyle", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** pwd("monnom", "mavaleur", "mataille", "masaisie", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function pwd() {
$param = func_get_args();
array_unshift($param, "password");
$this->ordre = array(0, 1, 2, 3, 4, 5, 6, 7, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** upload("name::monnom", "value::mavaleur", "class::maclass", "lang::malang", "accept::maaccept", "size::mataille", "title::montitre", "style::monstyle", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** upload("monnom", "mavaleur", "maaccept", "mataille", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function upload() {
$param = func_get_args();
array_unshift($param, "file");
$this->ordre = array(0, 1, 9, 6, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** res("value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** res("mavaleur", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function res() {
$param = func_get_args();
array_unshift($param, "reset");
$this->ordre = array(1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** button("name::monnom", "value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** button("monnom", "mavaleur", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function button() {
$param = func_get_args();
array_unshift($param, "button");
$this->ordre = array(0, 1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** submit("value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** submit("mavaleur", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function submit() {
$param = func_get_args();
array_unshift($param, "submit");
$this->ordre = array(1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** hidden("name::monnom", "value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** hidden("monnom", "mavaleur", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function hidden() {
$param = func_get_args();
array_unshift($param, "hidden");
$this->ordre = array(0, 1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** img_but("name::monnom", "src::masource", "value::mavaleur", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "align::monalign", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** img_but("monnom", "masource", "mavaleur", "maclass", "monstyle", "malang", "montitre", "monalign", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function img_but() {
$param = func_get_args();
array_unshift($param, "image");
$this->ordre = array(0, 11, 1, 2, 3, 4, 5, 10);
return $this->input($param);
}
/**************** Usage ****************
**
** check("name::monnom", "value::mavaleur", "label::monlabel", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** check("monnom", "mavaleur", "monlabel", "maclass", "monstyle", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function check() {
$param = func_get_args();
$input "ordre array(0, 1, 12, 2, 3, 4, 5, 10);
$i = 0;
$taille = count($param);
foreach ($param as $value) {
$value = preg_replace("/
/", "", $value);
if (preg_match("/(w+)".$this->separateur."(.*)/",$value,$res)) {
switch ($res[1]) {
case other :
$input .= " ".$res[2];
$j++;
break;
case label :
$label = " ".$res[2];
$j++;
break;
case value :
$valeur = $value;
$input .= " ".$res[1]."="".$res[2].""";
$j++;
break;
case name :
$name = $value;
default :
$input .= " ".$res[1]."="".$res[2].""";
$j++;
}
} else {
if ($value) {
if ($this->_Tattributs[$this->ordre[$i]] == "other") $input .= " ".$value;
elseif ($this->_Tattributs[$this->ordre[$i]] == "label") $label = $value;
elseif ($this->_Tattributs[$this->ordre[$i]] == "value") {
$valeur = $value;
$input .= " ".$this->_Tattributs[$this->ordre[$i]]."="".$value.""";
} elseif ($this->_Tattributs[$this->ordre[$i]] == "name") {
$name = $value;
$input .= " ".$this->_Tattributs[$this->ordre[$i]]."="".$value.""";
} else $input .= " ".$this->_Tattributs[$this->ordre[$i]]."="".$value.""";
}
$i++;
}
}
if (($GLOBALS["$name"] && $GLOBALS["$name"] == $valeur) || strtolower($valeur) == "on" || strtolower($GLOBALS["$name"]) == "on") $input .= " checked";
$input .= ">".$label."
";
$this->ordre = array();
return (($j $taille && $i 0) || ($i == $taille && $j == 0)) ? $input : 0;
}
/**************** Usage ***************
**
** radio("name::monnom", "value::mavaleur", "label::monlabel", "defaut::mondefaut", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "vertical::oui", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** radio("monnom", "mavaleur", "monlabel", "mondefaut", "maclass", "monstyle", "malang", "montitre", "oui", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function radio() {
$param = func_get_args();
$input "ordre array(0, 1, 12, 13, 2, 3, 4, 5, 14, 10);
$i = 0;
$taille = count($param);
foreach ($param as $value) {
if ($value) {
if ($this->_Tattributs[$this->ordre[$i]] == "other") $input .= " ".$value;
elseif ($this->_Tattributs[$this->ordre[$i]] == "vertical") $vertical = "
";
elseif ($this->_Tattributs[$this->ordre[$i]] == "value") $valeur = $value;
elseif ($this->_Tattributs[$this->ordre[$i]] == "defaut") $defaut = $value;
elseif ($this->_Tattributs[$this->ordre[$i]] == "label") $label = $value;
else $input .= " ".$this->_Tattributs[$this->ordre[$i]]."="".$value.""";
}
$i++;
}
if (is_array($valeur)) {
$temoin = $input;
$input = "";
foreach ($valeur as $val) {
$tempo = " value="".$val.""";
if ($defaut) if ($val == $defaut) $tempo .= " checked";
$input .= $temoin.$tempo.">".($label && $label[$val]?$label[$val]:$val)."
$vertical";
}
} else {
$input .= " value="".$valeur.""";
if ($defaut) if ($valeur == $defaut) $input .= " checked";// {$input .= " checked";print "$valeur == $defaut
";}
$input .= ">".$label."
$vertical";
}
$this->ordre = array();
return $i == $taille ? $input."
" : 0;
}
function input() {
$param = func_get_args();
$input = "separateur."(.*)/",$value,$res)) {
switch ($res[1]) {
case other :
$input .= " ".$res[2];
$j++;
break;
default :
$input .= " ".$res[1]."="".preg_replace("/"/", "'", stripslashes($res[2])).""";//on remplace tous les " en ', on supprime en plus tous les rajoutés par php, avant : $input .= " ".$res[1]."="".$res[2].""";
$j++;
}
} else {
if ($value) {
if ($this->_Tattributs[$this->ordre[$i]] == "other") $input .= " ".$value;
// else $input .= " ".$this->_Tattributs[$this->ordre[$i]]."="".$value.""";
else $input .= " ".$this->_Tattributs[$this->ordre[$i]]."="".preg_replace("/"/", "'", stripslashes($value)).""";
}
$i++;
}
}
$this->ordre = array();
return (($j $taille && $i 0) || ($i == $taille && $j == 0)) ? $input.">
" : 0;
}
/**************** Usage ****************
**
** textarea("name::monnom", "value::mavaleur", "cols::mescols", "rows::mesrows", "class::maclass", "style::monstyle", "lang::malang", "title::montitre", "wrap::monwrap", "other::mesautres");
** sur cette façon ci l'ordre n'a aucune importance
** ou
** textarea("monnom", "mavaleur", "mescols", "mesrows", "maclass", "monstyle", "malang", "montitre", "monwrap", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function textarea() {
$param = func_get_args();
$input = "<textarea";
$this->ordre = array(0, 1, 15, 16, 2, 3, 4, 5, 8, 10);
$i = 0;
$j = 0;
$taille = count($param);
foreach ($param as $value) {
$value = preg_replace("/
/", "", $value);
if (preg_match("/(w+)".$this->separateur."(.*)/",$value,$res)) {
switch ($res[1]) {
case other :
$input .= " ".$res[2];
$j++;
break;
case value :
// $valeur = $res[2];
$valeur = preg_replace("/"/", "'", stripslashes($res[2]));
$j++;
break;
default :
// $input .= " ".$res[1]."="".$res[2].""";
$input .= " ".$res[1]."="".preg_replace("/"/", "'", stripslashes($res[2])).""";
$j++;
}
} else {
if ($value) {
if ($this->_Tattributs[$this->ordre[$i]] == "other") $input .= " ".$value;
elseif ($this->_Tattributs[$this->ordre[$i]] == "value") $valeur = preg_replace("/"/", "'", stripslashes($value));
else $input .= " ".$this->_Tattributs[$this->ordre[$i]]."="".preg_replace("/"/", "'", stripslashes($value)).""";
/*
if ($this->_Tattributs[$this->ordre[$i]] == "value") $valeur = $value;
else $input .= " ".$this->_Tattributs[$this->ordre[$i]]."="".$value.""";
*/
}
$i++;
}
}
return (($j $taille && $i 0) || ($i == $taille && $j == 0)) ? $input.">".$valeur."</textarea>
" : 0;
}
/**************** Usage ****************
**
** popup("monnom", "mavaleur", "monlabel", "mondefaut", "multiple", "maclass", "monstyle", "masize", "malang", "montitre", "mesautres");
** sur cette façon là, l'ordre est très important
**
***************************************/
function popup() {
$param = func_get_args();
$popupmenu = "<select";
$this->ordre = array(0, 1, 12, 13, 17, 2, 3, 6, 4, 5, 10);
$i = 0;
$mul = 0;
$taille = count($param);
foreach ($param as $value) {
if ($value) {
switch ($this->_Tattributs[$this->ordre[$i]]) {
case multiple :
$mul = 1;
case other :
$popupmenu .= " ".$value;
break;
case style :
if (is_array($value)) $style = $value;
else $popupmenu .= " ".$this->_Tattributs[$this->ordre[$i]]."="".$value.""";
break;
case value :
$valeur = $value;
break;
case label :
$label = $value;
break;
case defaut :
$defaut = $value;
break;
case name :
$name = " name="".$value;
break;
case 'class' :
if (is_array($value)) $class = $value;
else $popupmenu .= " ".$this->_Tattributs[$this->ordre[$i]]."="".$value.""";
break;
default :
$popupmenu .= " ".$this->_Tattributs[$this->ordre[$i]]."="".$value.""";
break;
}
}
$i++;
}
if ($mul == 1 && !ereg("[]$",$name)) $name .= "[]";
$popupmenu .= $name."">
";
if (is_array($valeur)) {
$j = 0;
foreach ($valeur as $val) {
$sel = "";
$tempo = " value="".$val.""";
if ($style[$j]) $tempo .= " style="".$style[$j].""";
if ($class[$j]) $tempo .= " class="".$class[$j].""";
if (is_array($defaut) && $mul == 1) {
foreach ($defaut as $def) if ($def $val) $sel " selected";
} elseif ($defaut $val) $sel " selected";
$popupmenu .= "<option ".$tempo.$sel.">".($label && $label[$val]?$label[$val]:$val)."</option>
";
$j++;
}
} else {
if ($defaut) if ($valeur $defaut) $sel " selected";
if ($valeur) $popupmenu .= "<option value="".$valeur.""$sel>".($label?$label:$valeur)."</option>
";
}
$popupmenu .= "</select>
";
$this->ordre = array();
return $i == $taille ? $popupmenu : 0;
}
// Récupération les paramètres de la page
// Usage $html->param() => Récupère tous les paramètres de la page soumise
// $html->param('monparam') => Récupère le paramètre 'param' de la page soumise
function param($param = "") {
if ($param) {
$panam = $GLOBALS["$param"];
return $panam;
} else {
$param = array();
if ($GLOBALS["REQUEST_METHOD"] == 'GET') {
foreach ($GLOBALS["HTTP_GET_VARS"] as $name => $value) {
$param[$name] = $value;
}
} else {
foreach ($GLOBALS["HTTP_POST_VARS"] as $name => $value) {
$param[$name] = $value;
}
}
}
return $param;
}
// Change le séparateur pour les fonctions input par défaut c'est ::
function set_separateur() {
$param = func_get_args();
if ($param) $this->separateur = $param[0];
}
// Récupère l'url de la page en cours
function url() {
return "http://".$GLOBALS["HTTP_HOST"].$GLOBALS["SCRIPT_NAME"];
}
}
?>
5 nov. 2003 à 08:03
mais un ensemble de fonctions, étant donné qu'ici c'est une classe, on dira plus volontier une librairie je pense, ténue mais librairie qd meme. je ne sais pas exactement ce qui fait la différence entre une librairie et un package, c'est une impression que j'ai. Peut être le fait que le package soit compilé? (dans le cas des CGI)
4 nov. 2003 à 23:41
Je voulais écrire package.
C'est en PERL, c'est une sorte de fichier qui contient beaucoup de programme.
Il y en a un pour écrire des pages html.
Par exemple, à la place d'écrire :
<html><head>Titre</head>
On écrit :
start_html("Titre");
Le nom de la fonction n'est pas éxsact, mais c'est un peut près ca.
Il y en a pour toutes les balises normalisé. ( p("paragraphe"); ...)
Je commence tous juste le perl à l'iut, je regarderais mes cours si tu veux quelquechose de très précis.
4 nov. 2003 à 22:19
4 nov. 2003 à 20:51
4 nov. 2003 à 19:58
4 nov. 2003 à 16:42