webForumDet fria alternativet

Skumt problem med foreach

6 svar · 525 visningar · startad av nicce

nicceMedlem sedan okt. 200153 inlägg
#1

Hej!
Jag har problem... samma kodsnutt generar olika svar i olika konfigurationer.
(Se kod nedan)

php 4.2.3 isapi, win2000, iis 5.0
Här är det som det ska.. den skriver ut 12345, när man postar 12345

php:4.2.3 testat både cgi/isapi, win2003, iis 6.0
Här är det inte som det ska..
Posta 12: Då skriver den ut 12
Posta 123: Då skriver den ut 123
Posta 1234: Då skriver den inget
Posta 12345: Då skriver den 5
Posta 123456: Då skriver den 56
Posta 1234567: Då skriver den 567

Blir inte klok på det här. Nån som kan förklara för mig vad som är galet och vad jag ska göra för att få det åtgärdat?
Skulle vara tacksam!

<?
if ($submit == "submit")
{
foreach($test as $e)
{
echo "$e";
}
}
?>

<form method="post" action="<?=$PHP_SELF?>">
<input type="text" name="test[]" value="12345">
<input type=submit name=submit value=submit></form>

aasahMedlem sedan mars 20034 471 inlägg
#2

Testa att byta action mot $_SERVER['PHP_SELF'] istället för $PHP_SELF .

tydalMedlem sedan juni 20034 013 inlägg
#3

<input type="text" name="test">

$len = strlen($_POST['test']);
for ($i = 0; $i < $len; $i++)
{
$e = substr($_POST['test'], $i, 1);
}

MatteMedlem sedan aug. 20002 975 inlägg
#4

tydal, $_POST['test'] är en array, inte sträng.

Den effekt nicce får är att han, med IIS6 och PHP4.2.3, inte får med hela värdet när han loopar sin array.
Själv har jag aldrig varit med om något liknande.

Men varför använda en så gammal PHP-version ?
Uppdatera till den senaste PHP4 eller PHP5.

nicceMedlem sedan okt. 200153 inlägg
#5

ja...
Det är ett enormt system som måste kod-städas om vi byter version.
Och den ligger internt i en koncern. Så rent säkerhetsmässigt är det inget problem, då det inte finns nån access till internet.

Det här problemet dök upp då vi skulle städa bort lite servrar... flytta över systemet från en gammal burk till en ny alltså.
Som matte säger, jag har aldrig heller varit med om nåt liknande!

nicceMedlem sedan okt. 200153 inlägg
#6

hehe... nån som har ett tips!
skulle verkligen uppskattas

MatteMedlem sedan aug. 20002 975 inlägg
#7

Är det mycket fulkod du har ?
Annars ser jag inte så mycket problem med att byta till senaste PHP4.

Hänger det på att register_globals är satt så är det bara en inställning i php.ini. Går lika bra i alla versioner.

Kan vara värt att testa iallafall. Det är inte så svårt att byta tillbaka.
Det gäller bara att du har samma inställningar i php.ini som tidigare installation.

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)