Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Mktime-krångel!

Postades av 2007-11-05 17:21:49 - Anja Person, i forum php, Tråden har 10 Kommentarer och lästs av 1398 personer

Hej, håller på med ett litet PHP projekt och har fastnat.

$rem_img = "../img/rem.gif";
$sDate = $row['paminnelseDatum'] - $row['PaminnelseDagar'];
list($month, $day, $year) = split('[/.-]', $sDate);
$alt_txt = "Påminnelse " . date("1", mktime(0, 0, 0, $month, $day, $year)) . " den " . $day . " " . $month . " " . $year;

$row['paminnelseDatum'] och $row['PaminnelseDagar'] innehåller datum av typen 06-06-2006 samt 05-05-2005

Felet jag får är:
Warning: mktime() expects parameter 4 to be long, string given in test.php

Vad är problemet?
Tacksam för svar


Svara

Sv: Mktime-krångel!

Postades av 2007-11-06 15:48:57 - Per Persson

<b> $sDate = $row['paminnelseDatum'] - $row['PaminnelseDagar'];</b>

PHP förstår inte att termerna är ett datum utan försöker göra om dem till tal, varvid den bara tar första delen av datumen (dvs dagen) och subtraherar dessa.


<b>date("1", mktime(0, 0, 0, $month, $day, $year))</b>

mktime() verkar användas korrekt, men vad försöker du göra med date()? Det där borde bara ge en etta.


Svara

Sv:Mktime-krångel!

Postades av 2007-11-23 15:27:45 - Anja Person

Jag försöker få ut dagen för just det givna datumet.. Hur ska jag göra för att subtrahera hela datumet då?


Svara

Sv: Mktime-krångel!

Postades av 2007-11-23 22:56:04 - Per Persson

Jag antar att $row är hämtad ur en databas. Är det MySQL? I så fall sköter du enklast datumberäkningarna i SQL-satsen:
<b>SELECT ..., (paminnelseDatum - INTERVAL PaminnelseDagar DAY) AS sDatum, ...</b>


Svara

Sv:Mktime-krångel!

Postades av 2007-11-27 16:54:08 - Anja Person

Jaha, det visste jag faktiskt inte gick, så då kan man alltså deklarera en variabel (sDatum) direkt i SQL satsen?


Svara

Sv: Mktime-krångel!

Postades av 2007-11-27 19:31:03 - Per Persson

Vill inte kalla det "deklarera en variabel", men ja, man kan lägga uttryck i fältlistan efter SELECT och ge uttrycken namn.


Svara

Sv:Mktime-krångel!

Postades av 2007-12-03 16:57:11 - Anja Person

nu använder jag mig utav en SELECT * from Tabell.. kan man kombinera SELECT * med (paminnelseDatum - INTERVAL PaminnelseDagar DAY) AS sDatum på något sätt? Det känns rätt drygt att behöva använda en SELECT på varenda kolumn när det egentligen bara är två kolumner som ska formateras i sDatum?


Svara

Sv: Mktime-krångel!

Postades av 2007-12-03 21:44:49 - Per Persson

SELECT *, (paminnelseDatum - INTERVAL PaminnelseDagar DAY) AS sDatum


Svara

Sv:Mktime-krångel!

Postades av 2007-12-04 17:53:37 - Anja Person

Tack för all din hjälp!
Jag förespråkar att man ska försöka lära sig själv och inte hela tiden be andra om kod. Dessvärre förstår jag inte vad jag gör för fel :/

Min kod ser ut såhär:
If ($paminnelseDatum != "") {
$rem_img = "../img/rem.gif";
$sDate = $sDatum;
list($month, $day, $year) = split('[/.-]', $sDatum);
$alt_txt = "Påminnelse " . date("1", mktime(0, 0, 0, intval($month), intval($day), intval($year))) . " den " . $day . " " . $month . " " . $year;
}
Else {

$rem_img = "../img/norem.gif";
$alt_txt = "Skapa påminnelse...";
}

---------------------------------------------------------------------------------------------------------------
Och den skriver ut så mycket som:
ALT="Påminnelse 1 den " (ALT=$alt_txt)
---------------------------------------------------------------------------------------------------------------

Koden jag håller på med är från början skriven i ASP och ser då ut såhär:

rem_img = "../img/rem.gif"

sDate = RS(paminnelseDatum) - RS("PaminnelseDagar")

alt_txt = "Påminnelse " & WeekDayName(WeekDay(sDate)) & " den " & Day(sDate) & " " & MonthName(Month(sDate)) & " " & Year(sDate)

Else

rem_img = "../img/norem.gif"

alt_txt = "Skapa påminnelse..."

--------------------------------------------------------------------------
Hurvida detta gör en klokare vet jag inte, men det ger ändå ett hum om vad koden är tilltänkt haha ( i varje fall för mig)


Svara

Sv: Mktime-krångel!

Postades av 2007-12-04 23:05:29 - Per Persson

Det skall vara <b>date('l', ...)</b> (med litet L), inte date('1', ...) (med en etta).


Svara

Sv:Mktime-krångel!

Postades av 2007-12-05 17:49:11 - Anja Person

Tack så mycket! Nu får jag ut veckodagen i varje fall, (ALT="Påminnelse Tuesday den), så nu verkar problemet ligga i: list($month, $day, $year) = split('[/.-]', $sDatum);

I och med att sql:en skapar $sDatum genom subtrahering, tar den då möjligtvis bort tecken som "/" och "-", kan det då påverka list($month, $day, $year) ?


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 763
27 959
271 761
661
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies