Frågan 21 sep. 2005 13:24 #1 Hej, jag har ett script här som gör om mina siffror till bilder. Men eftersom det är ett datum och tid det handlar om så finns det vissa tecken som inte blir konverterade till bilder. Tex. 2005-06-22, kl 21:05. Eftersom bilderna inte kan heta -.gif eller :.gif så funkar inte scriptet 100%. Hur gör jag för att ersätta - med streck.gif och : med kolon.gif?
<?php
$datum = date("Y-m-d");
$tid = date("H:i");
$dag = date("l");
echo "<img src=images/$dag.gif> ";
$antal = strlen($datum);
for($i=0;$i<$antal;$i++)
{
$delsiffra = substr($datum, $i , 1);
echo "<img src=\"images/" . $delsiffra . ".gif\">";
}
echo " ";
$antal = strlen($tid);
for($i=0;$i<$antal;$i++)
{
$delsiffra = substr($tid, $i , 1);
echo "<img src=\"images/" . $delsiffra . ".gif\">";
}
?>
E emission Medlem sedan dec. 1999 6 721 inlägg switch($delsiffra)
{
case ".":
$delsiffra="punkt";
break;
case ":":
$delsiffra="kolon";
break;
}
Hmm, hur ska koden in i det jag skrivit?
fiddler Medlem sedan juli 2002 3 617 inlägg Före echo-satsen i varje loop. Ändra punkt till streck bara.
switch($delsiffra)
{
case "-":
$delsiffra="streck";
break;
case ":":
$delsiffra="kolon";
break;
}
Det kanske vore lika bra att göra det till en funktion.
Jag får inte riktigt till det, var det såhär du menade? Nu funkar inga bilder, inget felmeddelande dock.
<?php
$datum = date("Y-m-d");
$tid = date("H:i");
$dag = date("l");
echo "<img src=images/$dag.gif> ";
$antal = strlen($datum);
for($i=0;$i<$antal;$i++)
{
switch($delsiffra)
{
case "-":
$delsiffra="streck";
break;
case ":":
$delsiffra="kolon";
break;
}
echo "<img src=\"images/" . $delsiffra . ".gif\">";
}
echo " ";
$antal = strlen($tid);
for($i=0;$i<$antal;$i++)
{
switch($delsiffra)
{
case "-":
$delsiffra="streck";
break;
case ":":
$delsiffra="kolon";
break;
}
echo "<img src=\"images/" . $delsiffra . ".gif\">";
}
?>
fiddler Medlem sedan juli 2002 3 617 inlägg Du behöver din gamla rad med $delsiffra=...
Nu fick jag det att fungera, körde med IF-satser istället.
<?php
$datum = date("Y-m-d");
$tid = date("H:i");
$dag = date("l");
echo "<img src=images/$dag.gif> ";
$antal = strlen($datum);
for($i=0;$i<$antal;$i++)
{
$delsiffra = substr($datum, $i , 1);
if ($delsiffra == '-')
{
echo "<img src=images/streck.gif>";
}
elseif ($delsiffra == ':')
{
echo "<img src=images/kolon.gif>";
}
else
{
echo "<img src=\"images/" . $delsiffra . ".gif\">";
}
}
echo "  ";
$antal = strlen($tid);
for($i=0;$i<$antal;$i++)
{
$delsiffra = substr($tid, $i , 1);
if ($delsiffra == '-')
{
echo "<img src=images/streck.gif>";
}
elseif ($delsiffra == ':')
{
echo "<img src=images/kolon.gif>";
}
else
{
echo "<img src=\"images/" . $delsiffra . ".gif\">";
}
}
?>
fiddler Medlem sedan juli 2002 3 617 inlägg Vad bra att du fick det att fungera! :)
Det borde ha fungerat med switch-satsen om du hade lagt in $delsiffra = substr($datum, $i , 1); före den, men huvudsaken är att det fungerar.
Kom ihåg att lägga till citationstecken i dina img-taggar om du vill at de ska validera.
Hej å hå, koda på... :bire