/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
En variabel der indeholder flere 0'er ????
Fra : Jesper Andersen


Dato : 06-02-03 15:56

Hejsa.
Jeg har et lille script der skal vise det næste billede i rækken. Jeg
har 600 billeder og det første hedder 001.jpg 002.jpg osv...
Mit script ser sådan her ud:

<?php

print "<IMG SRC=s".$side.".jpg BORDER=0>";
print "<BR>";

print "<TABLE WIDTH=30% BORDER=0><TR>";
print "<TD WIDTH=\"15%\"><CENTER><A
HREF=visside.php?side=".(($side)-1)."><IMG SRC=back.gif
BORDER=0></A></TD>";
print "<TD WIDTH=\"15%\"><CENTER><A
HREF=visside.php?side=".(($side)+1)."><IMG SRC=next.gif
BORDER=0></A></TD>";
print "</TR></TABLE>";


?>

Problemet ligger i at når man prøver at komme en side frem eller
tilbage, smider den de foreste 0'er væk så der fx kun står 5.jpg
istedet for 005.jpg.
Nogen der har en hurtig og enkel løsning på dette, uden at skulle
rename alle mine billeder ???

 
 
[5000] Jesper Brunho~ (06-02-2003)
Kommentar
Fra : [5000] Jesper Brunho~


Dato : 06-02-03 16:07

Jesper Andersen wrote:
> Problemet ligger i at når man prøver at komme en side frem eller
> tilbage, smider den de foreste 0'er væk så der fx kun står 5.jpg
> istedet for 005.jpg.
> Nogen der har en hurtig og enkel løsning på dette, uden at skulle
> rename alle mine billeder ???

Du skal sikre dig at variablen $side indeholder en string i stedet for
en integer, så burde php ikke fjerne nullerne.

Dvs:
$side=001; #forkert - der står bare 1
$side='001'; #det burde være bedre - nu skulle der gerne stå 001...

Problemet er så at du ikke kan trække fra og lægge til på en streng, og
det vil du vist gerne (jeg ville nok løse det ved at lægge alle
billederne i et array så de kunne hedde hvad som helst, men det er en
anden snak)

Så må du i stedet have fat i en funktion som kan sikre at dit tal altid
præsenteres med det rigtige antal nuller, det kan du sikkert med
sprintf() eller number_format().
Du kan også meget let lave det selv ved at bruge strlen() til at finde
ud af hvor mange decimaler variablen indeholder, og så sætte nuller
foran til det passer...

/Jesper Brunholm


--
Skriv hvor grejet er - jeg har skrevet postnummer i fra-felt.
Luk for de varme varer - giv og forlang kvittering!
¿?Markedsgrupperne¿? Se her hvad og hvorfor:
<http://www.usenet.dk/grupper.pl?list=dk.marked>




Larz (06-02-2003)
Kommentar
Fra : Larz


Dato : 06-02-03 16:45

Jesper Andersen <REMOVEja@palby.dk> wrote in
news:8pt44v88o4og1gubnlrr53fkidt5kqoam5@4ax.com:
> Problemet ligger i at når man prøver at komme en side frem eller
> tilbage, smider den de foreste 0'er væk så der fx kun står 5.jpg
> istedet for 005.jpg.
> Nogen der har en hurtig og enkel løsning på dette, uden at skulle
> rename alle mine billeder ???

echo sprintf('%03d %03d %03d',6,66,666);

--
-
Lars
http://coder.dk/sohofaq.php - Uofficiel WOL SOHO 77 FAQ
To mail me remove your pants.

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste