Skip to content
Extraits de code Groupes Projets
Valider 51a87ae5 rédigé par Fil's avatar Fil
Parcourir les fichiers

suppression du hack mortel 32ko : on coupe indépendamment du brouteur.

parent 4741a537
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -392,18 +392,15 @@ echo "<P><HR><P>";
if (strlen($texte)>29*1024) // texte > 32 ko -> decouper en morceaux
{
include "inc_32ko_browsers.php3";
if (! browser_32ko($HTTP_USER_AGENT)){ // browser pas connu comme "sur"
$textes_supplement = "<br><font color='red'>(le texte est long&nbsp;: il appara&icirc;t donc en plusieurs parties qui seront recoll&eacute;es apr&egrave;s validation.)</font>\n";
while (strlen($texte)>29*1024)
{
$nombre_textes ++;
list($texte1,$texte) = coupe_trop_long($texte);
$textes_supplement .= "<BR><TEXTAREA NAME='texte$nombre_textes'".
" CLASS='formo' ROWS='$rows' COLS='40' wrap=soft>" .
$texte1 . "</TEXTAREA><P>\n";
}
$textes_supplement = "<br><font color='red'>(le texte est long&nbsp;: il appara&icirc;t donc en plusieurs parties qui seront recoll&eacute;es apr&egrave;s validation.)</font>\n";
while (strlen($texte)>29*1024)
{
$nombre_textes ++;
list($texte1,$texte) = coupe_trop_long($texte);
$textes_supplement .= "<BR><TEXTAREA NAME='texte$nombre_textes'".
" CLASS='formo' ROWS='$rows' COLS='40' wrap=soft>" .
$texte1 . "</TEXTAREA><P>\n";
}
}
echo "<B>Texte</B>";
......
<?php
//
// Ce fichier ne sera execute qu'une fois
if (defined("_ECRIRE_INC_32KO_BROWSERS")) return;
define("_ECRIRE_INC_32KO_BROWSERS", "1");
function set_32ko_browsers() {
global $connu_ok, $connu_coupe;
// navigateurs OK
// Netscape
$connu_ok['Mozilla/4.5 [fr] (Macintosh; U; PPC)'] = true ; // fil
$connu_ok['Mozilla/4.75 [en] (Win95; U)'] = true; // antoine
$connu_ok['Mozilla/5.0 (Macintosh; N; PPC; en-US; 0.7) Gecko/20010108'] = true; // pedro
$connu_ok['Mozilla/4.74 (Macintosh; U; PPC)'] = true; // pedro
$connu_ok['Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90)'] = true; // antoine
$connu_ok['Mozilla/5.0 (X11; U; Linux 2.2.17 i586; en-US; Galeon) Gecko/20010421'] = true; // michael parienti
$connu_ok['Mozilla/4.77 [en] (X11; U; Linux 2.2.17 i586)'] = true; // michael parienti
$connu_ok['Mozilla/5.0 (X11; U; Linux 2.2.17 i586; en-US; rv:0.9) Gecko/20010505'] = true; // michael parienti
$connu_ok['Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)'] = true; // fil
// Konqueror
$connu_ok['Mozilla/5.0 (compatible; Konqueror/2.1.2; X11)'] = true; // michael parienti
// Lynx
$connu_ok['Lynx/2.8.3rel.1 libwww-FM/2.14'] = true; // fil
$connu_ok['Lynx/2.7.1 (MacOS b1) libwww-FM/unknown'] = true; // pedro
// Omniweb
$connu_ok['Mozilla/4.0 (compatible; MSIE 5.5; Mac_PowerPC; OmniWeb/4.0-code-freeze-3)'] = true; // pedro
// Links
$connu_ok['Links (0.95; Darwin 1.3.7 Power Macintosh)'] = true; // aris
// navigateurs qui coupent
// Internet Explorer
$connu_coupe['Mozilla/4.0 (compatible; MSIE 5.0; Mac_PowerPC)'] = true; // fil
$connu_coupe['Mozilla/4.0 (compatible; MSIE 5.1b1; Mac_PowerPC)'] = true; // pedro
$connu_coupe['Mozilla/4.0 (compatible; MSIE 5.0b1; Mac_PowerPC)'] = true; // pedro
$connu_coupe['Mozilla/4.0 (compatible; MSIE 5.13; Mac_PowerPC)'] = true; // fil
// iCab
$connu_coupe['iCab/2.5.1 (Macintosh; I; PPC)'] = true; // fil
$connu_coupe['Mozilla/4.5 (compatible; iCab 2.5.1; Macintosh; I; PPC)'] = true; // pedro
// Opera
$connu_coupe['Mozilla/4.0 (compatible; MSIE 5.0; Mac_PowerPC) Opera 5.0 [en]'] = true; // fil
$connu_coupe['Opera/5.0 (Macintosh;US;PPC) [en]'] = true; // fil
}
function browser_32ko($user_agent) {
global $connu_ok;
if ($connu_ok[$user_agent]) return true;
else return false;
}
set_32ko_browsers();
?>
<?php
include "inc_32ko_browsers.php3";
$toto = "Vous savez parler le 32ko ; moi non, mais je vous en remercie...\n";
$long = strlen($toto);
while ($taille < 38*1024){
$taille += $long;
$texte .= $toto;
}
if ($control == "vu") {
echo "<H1>R&eacute;sultat du test</H1>";
print "texte initial : ".strlen($texte)." car. ; champ renvoy&eacute; : ".strlen($champ)." car.<BR>";
$champ = ereg_replace("[\r\n]+","\n",$champ);
$texte = ereg_replace("[\r\n]+","\n",$texte);
if (trim($champ) == trim($texte)){
echo "<B>Votre navigateur est <font color=green>OK</font> :</B><BR>
$HTTP_USER_AGENT\n";
$ok = true;
} else {
echo "<B>Votre navigateur <font color='red'>coupe les textes trop longs</font> :</B><BR>
$HTTP_USER_AGENT\n";
$ok = false;
}
// connu ou pas ?
if ($connu_ok[$HTTP_USER_AGENT]){
if (! $ok){
print "Contre-ordre!<BR>".
"<P>Merci d'envoyer ce r&eacute;sultat &agrave; &lt;spip-dev@rezo.net&gt;.";
}
} elseif ($connu_coupe[$HTTP_USER_AGENT]){
if ($ok){
print "Contre-ordre!<BR>".
"<P>Merci d'envoyer ce r&eacute;sultat &agrave; &lt;spip-dev@rezo.net&gt;.";
}
} else
echo "<P>Merci d'envoyer ce r&eacute;sultat &agrave; &lt;spip-dev@rezo.net&gt;.";
} else {
echo "<H1>Test navigateur</H1>";
echo "<font color=red><b>Certains navigateurs sont capables de traiter
des TEXTAREA de plus de 32ko. Ici vous pouvez tester le v&ocirc;tre...</b></font><BR>";
if ($connu_ok[$HTTP_USER_AGENT]){
echo "<B><font color=blue>A priori votre navigateur est OK.</font></B><BR>";
} elseif ($connu_coupe[$HTTP_USER_AGENT]){
echo "<B><font color=blue>A priori votre navigateur coupe les textes.</font></B><BR>";
} else {
echo "<B><font color=blue>Votre navigateur n'est pas encore test&eacute;</font></B><BR>";
}
echo "<FORM action='test_32ko.php3' METHOD='post'>";
echo "<TEXTAREA NAME='champ' ROWS='20' COLS='40'>";
print $texte;
echo "</TEXTAREA>";
echo "<input type='hidden' name='control' value='vu'><BR>";
echo "<INPUT TYPE='submit' value='Tester votre navigateur'></FORM>";
}
?>
\ No newline at end of file
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter