Avatar billede jakobgt Nybegynder
09. april 2002 - 21:46 Der er 11 kommentarer og
1 løsning

08 bliver til 8???

Hej

Hvordan kan det være at hvis jeg kører flg. kode udskriver PHP kun et 0 og ikke et 8-tal:
echo 08;

Så vidt jeg kan se er det kun ved 08, det sker - ikke ved f.eks. 05 og 06
Avatar billede minijensen1 Nybegynder
09. april 2002 - 21:47 #1
fordi den tager 08 som et tal .. prøv med echo "08"; .. så skulle den gerne se det som en streng :-)
Avatar billede jakobgt Nybegynder
09. april 2002 - 21:50 #2
Jamen hvordan kan det så være at det ikke sker ved 05 eller 06 for den sags skyld?
Avatar billede jakobgt Nybegynder
09. april 2002 - 21:55 #3
Og det er faktisk temmelig problematisk for den gør det også i flg. sql-query når $uge_nr er 08 (Dette kan jeg ikke lave om på, for det er en DB'en der returnerer 08):
db_sporg("insert into chart_type (type,tidspunkt,navn,hits) values('time','$uge_nr','time',$hits)")
Avatar billede minijensen1 Nybegynder
09. april 2002 - 21:59 #4
hmm .. ved ikke hvorfor den gør det med de to andre tal .. jeg er ikke så meget inde i PHP endnu .. men det lyder da underligt ..
Avatar billede erikjacobsen Ekspert
09. april 2002 - 22:03 #5
Nej, det er ikke underligt - ikke ret meget.

Tal, der begynder med cifferet 0 opfattes som oktale tal, dvs.
tal der indeholder cifre fra 0 til 7. Et 8 ciffer er ulovligt, og så
bliver det til et nul.

Prøv f.x at udskrive 011.

Smart, ik' ?
Avatar billede jakobgt Nybegynder
09. april 2002 - 22:07 #6
Ahhhhh, jamen hvordan fjerner jeg så det første 0 uden at PHP opfatter den som en oktal?
Avatar billede erikjacobsen Ekspert
09. april 2002 - 22:08 #7
Prøv lige at fortælle hvor du får det fra ?
Avatar billede jakobgt Nybegynder
09. april 2002 - 22:20 #8
Jeg har en statestikside, hvor jeg vil opføre hvor mange besøgende der er pr. time. Timen får jeg så ud fra en tabel, hvor alle besøg er logget, vha. en funktion (jeg selv har fikset sammen) der udtager timen (via nogle regulære udtryk, for jeg bruger nemlig Access og vil gerne kunne konvertere den til en MySQL-db på et senere tidspunkt).
Denne time indsættes så i et array som key (en for-løkke gennemløber nemlig alle posterne), hvor den derefter udtrækkes til en ny post i en ny tabel.
Forvirret?? (se her http://www.highpower.dk/test/avanceret.phps) ;-)
Den er kun det første i scriptet I skal kigge på, det sidste er lidt rodet ;-)
Avatar billede erikjacobsen Ekspert
09. april 2002 - 22:24 #9
Det er for kompliceret til at jeg gider (kan?) finde ud af hvor
dit problem opstår. Vis os de relevante linier her.
Avatar billede jakobgt Nybegynder
09. april 2002 - 22:28 #10
Ok:
$int_time = dato_format($poster[$i]["tidspunkt"], "%H");  (Jeg får timen ud af tabellen)
$arr_time_hit["$int_time"] += 1; (Der tilføjes et hit til timen)

foreach($arr_time_hit as $uge_nr=>$hits)
{
  db_sporg("insert into chart_type (type,tidspunkt,navn,hits) values('time','$uge_nr',time',$hits)");   
}

Jeg skriver hver af timerne's hit ind i tabellen.

Mvh Jakob

PS: tag jer ikke af benævnelsen, som sagt er det en kende rodet endnu...
Avatar billede erikjacobsen Ekspert
09. april 2002 - 22:36 #11
Du kan vel bare bruge %G i stedet for %H
( http://www.php.net/manual/en/function.date.php )
Avatar billede jakobgt Nybegynder
09. april 2002 - 22:42 #12
Mange tak. Du har lige reddet min aften ;o)

Mvh Jakob
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester