abonnement Unibet Coolblue
  zaterdag 7 april 2012 @ 11:47:02 #201
370539 kucher
is snucher
pi_110017856
Bewaar alleen het relatieve pad in je db, bedank me later.
  zaterdag 7 april 2012 @ 11:50:57 #202
267547 smegmanus
FOK! ambassadeur
pi_110017951
We gaan eens testen, bedankt voor zover.
Op donderdag 15 januari 2015 19:01 schreef Maanvis het volgende:
smegmanus is de as van het kwaad. een verbrand stukje Hitler.
pi_110030671
Heren,

Ik hoop dat jullie me weer eens kunnen helpen.
Ik ben iets aan het bouwen dat de usertabellen van vbullentin 4 gebruikt.
Hierin staat de usertimezone welke het verschil van hun tijd zone met GMT. bijvoorbeeld voor mijzelf +1

In mijn script wil ik data gaan opslaan en voor iedereen in de goede tijd weergeven.
Dat leek mij vrij simpel.
De user geeft een datum en tijd in, hier maak ik een tijdstamp van dmv mktime.
Daar haal ik het verschil aan uren vergeleken met gmt af om de gmt tijd te krijgen.
Deze sla ik op en als ik deze uit de database haal reken ik deze weer om naar de tijdzone van de user.

de server staat op -5 van gmt, dit verreken ik als ik time() aanroep.
Ik heb ook geprobeerd om de default tijd zonde van de server op gmt te zetten.

Ik krijg het alleen niet voor elkaar om de datums goed te krijgen, misschien dat ik er gister te lang naar heb zitten staren...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
date_default_timezone_set('GMT');
function serverToGMTStamp() { // replaces time
    return  time();//-((date("O") / 100)*60*60);// server timestamp to gmt timestmap
}

function userInputToGMTStamp($userStamp,$userTimeZone) { // to be saved to database
    return  $userStamp-($userTimeZone*60*60);// user timestamp to gmt timestmap
}

function gmtToUserTime($gmtStamp,$userTimeZone,$format="d-m-Y H:i") { // displayed date /time in user timezone
    return date($format,$gmtStamp+($userTimeZone*60*60));
}
function inputTimetoStamp($input){
    if($input){    
        list($date, $time) = explode(' ',$input);
        list($hour, $minute) = explode(':',$time);
        list($month, $day, $year) = explode('/',$date);
        $input = mktime ($hour, $minute, 0, $day, $month, $year);
        return $input;
    }
}

$databaseDate = '04/06/2012 20:00'; //date in database already
$userTimeZone = 1; //compared to gmt
$databaseDateTimestamp = 1333742400; // gmt stamp from database
$databaseDateTimestampToUser = $databaseDateTimestamp+($userTimeZone*60*60); // to user timezonestamp 

$serverToGMTStamp = serverToGMTStamp();
$serverToUserGMTtoUser = $serverToGMTStamp+($userTimeZone*60*60); // to user timezonestamp 
echo 'databaseDateTimestamp (gmt): '.$databaseDateTimestamp.'<br />';
echo 'databaseDateTimestamp date (gmt): '.date("m/d/Y, H:i",$databaseDateTimestamp).'<br /><br />';

echo 'databaseDateTimestamp (user): '.$databaseDateTimestampToUser.'<br />';
echo 'databaseDateTimestamp date (user): '.date("m/d/Y, H:i",$databaseDateTimestampToUser).'<br /><br />';

echo 'serverTimeStamp (gmt): '.$serverToGMTStamp.'<br />';
echo 'serverTimeStamp date (gmt): '.date("m/d/Y, H:i",$serverToGMTStamp).'<br /><br />';

//echo 'serverTimeStamp (user): '.$serverToUserGMTtoUser.'<br />';
//echo 'serverTimeStamp date (user): '.date("m/d/Y, H:i",$serverToUserGMTtoUser).'<br /><br />';

if($serverToUserGMTtoUser>$databaseDateTimestampToUser)
{
echo 'input time already past by '.(($serverToUserGMTtoUser-$databaseDateTimestampToUser)/(60*60));
}
else{
echo 'input time not past';
}
exit();
  zaterdag 7 april 2012 @ 18:43:00 #204
370539 kucher
is snucher
pi_110031308
1
2
3
4
5
<?php
function serverToGMTStamp() { // replaces time
    
return time();
}
?>
Daarom betalen ze mij 120 Euro per uur, clientèle krijgen waar voor hun geld :7
pi_110031614
zoals je daarachter ziet ben ik veel aan het kutten geweest.

Maar mijn 'concept' klopt toch?
pi_110038929
quote:
0s.gif Op zaterdag 7 april 2012 18:24 schreef Darkomen het volgende:
Heren,

Ik hoop dat jullie me weer eens kunnen helpen.
Ik ben iets aan het bouwen dat de usertabellen van vbullentin 4 gebruikt.
Hierin staat de usertimezone welke het verschil van hun tijd zone met GMT. bijvoorbeeld voor mijzelf +1

Voordat je denkt dat je iets fout doet terwijl het niet zo is; momenteel is het voor ons GMT +2 omdat het zomertijd is.
  FOK!-Schrikkelbaas woensdag 11 april 2012 @ 14:26:10 #208
1972 Swetsenegger
Egocentrische Narcist
pi_110181251
Zie ik iets over het hoofd :?

Ik heb een tekstfile waarin ik userid's opsla.

Die file lees ik in een array, en vervolgens controleer ik over de userID uit mijn sessie in die tekstfile staat. Zo niet, schrijf ik een variabele EN schrijf vervolgens de sessie ID naar de textfile.

1
2
3
4
5
6
7
8
9
10
11
12
<?php
    $wallPosts 
= array();
    
$wallPosts=file('wallPost.txt'FILE_IGNORE_NEW_LINES);
        
    if(!
in_array($_SESSION['uid'], $wallPost)) {
        
$onload "onload=\"postToWall();\"";
        
$fp fopen('wallPost.txt''a');
        
fwrite($fp$_SESSION['uid']."\r\n");
        
fclose($fp);
        echo 
$onload;
    }
?>

Maar nou het lullige. Ik weet 100% zeker dat mijn sessie ID niet in de tekstfile staat (sterker nog, de file is leeg), maar $onload wordt niet geschreven de eerste keer dat ik de file laadt de fwrite wordt wel uitgevoerd.

als ik vervolgens de tekstfile leeg maak en opnieuw laadt werkt het wel zoals verwacht. Delete ik echter alle history & sessies en probeer het weer van voor af aan gaat het weer mis.

Het lijkt wel of de file schrijven wordt uitgevoerd waardoor de voorwaarde van de if false is.

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    $wallPosts 
= array();
    
$wallPosts=file('wallPost.txt'FILE_IGNORE_NEW_LINES);
    
print_r($wallPosts); // dit geeft een array terug met de sessieID die HIERONDER geschreven wordt
    
    
if(!in_array($_SESSION['uid'], $wallPost)) {
        
$onload "onload=\"postToWall();\""// wordt niet uitgevoerd
        
$fp fopen('wallPost.txt''a'); //wordt wel uitgevoerd
        
fwrite($fp$_SESSION['uid']."\r\n"); //wordt wel uitgevoerd
        
fclose($fp); // wordt wel uitgevoerd
        
echo $onload;
    }
?>
  woensdag 11 april 2012 @ 14:50:14 #209
75592 GlowMouse
l'état, c'est moi
pi_110182283
$_SESSION['uid'] zal wel leeg zijn, maar dat is standaard debugwerk. Regel 2 is overbodig.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  FOK!-Schrikkelbaas woensdag 11 april 2012 @ 14:59:53 #210
1972 Swetsenegger
Egocentrische Narcist
pi_110182767
quote:
0s.gif Op woensdag 11 april 2012 14:50 schreef GlowMouse het volgende:
$_SESSION['uid'] zal wel leeg zijn, maar dat is standaard debugwerk. Regel 2 is overbodig.
Nee hij is niet leeg, anders kan hij die ook niet schrijven naar de txt file op regel 8...
Ik weet dat regel 2 overbodig is, die heb ik maar toegevoegd om te zien of dat het probleem oplost
  woensdag 11 april 2012 @ 15:01:43 #211
75592 GlowMouse
l'état, c'est moi
pi_110182838
var_dump($_SESSION['uid'], $wallPost)
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  woensdag 11 april 2012 @ 15:04:41 #212
75592 GlowMouse
l'état, c'est moi
pi_110182943
of je browser cache
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  FOK!-Schrikkelbaas woensdag 11 april 2012 @ 15:14:17 #213
1972 Swetsenegger
Egocentrische Narcist
pi_110183367
quote:
14s.gif Op woensdag 11 april 2012 15:01 schreef GlowMouse het volgende:
var_dump($_SESSION['uid'], $wallPost)
string(15) "100003526677056" NULL

-edit-

Of je zet de goede variabele in je dumb

string(15) "100003526677056" array(0) { }
  FOK!-Schrikkelbaas woensdag 11 april 2012 @ 15:15:02 #214
1972 Swetsenegger
Egocentrische Narcist
pi_110183399
quote:
14s.gif Op woensdag 11 april 2012 15:04 schreef GlowMouse het volgende:
of je browser cache
Ik delete alle history en browser gegevens tussen elke test
  woensdag 11 april 2012 @ 15:26:11 #215
75592 GlowMouse
l'état, c'est moi
pi_110183936
wijzig echo $onload; in die($onload), dan kun je hem niet missen
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  FOK!-Schrikkelbaas woensdag 11 april 2012 @ 15:27:45 #216
1972 Swetsenegger
Egocentrische Narcist
pi_110184002
ik loop nu tegen een facebook restrictie aan, kan niet meer verder testen :')
  FOK!-Schrikkelbaas woensdag 11 april 2012 @ 15:45:28 #217
1972 Swetsenegger
Egocentrische Narcist
pi_110184888
quote:
14s.gif Op woensdag 11 april 2012 15:26 schreef GlowMouse het volgende:
wijzig echo $onload; in die($onload), dan kun je hem niet missen
Script loopt gewoon door. UID wordt in de txt file geschreven maar geen 'die'

1
2
3
4
5
6
7
8
9
10
11
<?php
    $wallPosts
=file('wallPost.txt'FILE_IGNORE_NEW_LINES);
        
    if(!
in_array($_SESSION['uid'], $wallPosts)) {
        
$onload "onload=\"postToWall();\"";
        
$fp fopen('wallPost.txt''a');
        
fwrite($fp$_SESSION['uid']."\r\n");
        
fclose($fp);
        die(
$onload);
    }
?>

Ik begrijp er geen flikker van :{
  woensdag 11 april 2012 @ 18:08:28 #218
137776 boem-dikkie
Jedi Mind Baby!
pi_110191599
Iemand een oplossing voor mijn kwestie, of een schop in de goede richting?

Ik heb meerdere rows met informatie in een tabel.

Eén van de kolommen in een rij heet tags.

In die kolommen zitten de tags als volgt: leuk, hoi, hai.

Nu wil ik de tags van alle rijen laten zien zonder dat ik duplicates heb.

Ik heb bijv. twee rijen:
ID | Tags
1 | Een, twee, drie
2 | Vier, vijf, twee, een.

Nou wil ik als output: Een, twee, drie, vier, vijf.

Ik krijg als ik gewoon de boel select en naar buiten gooi nu: Een, twee, drie, vier, vijf, twee, een.
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
  woensdag 11 april 2012 @ 18:29:49 #219
25889 Sitethief
Fulltime Flapdrol
pi_110192424
GROUP BY al geprobeerd?
Stroek: Sitethief, die is heel groot en sterk :Y.
Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
pi_110193168
Waarom sla je meerdere tags in één veld op?
  woensdag 11 april 2012 @ 18:48:37 #221
137776 boem-dikkie
Jedi Mind Baby!
pi_110193175
Jep. Helaas.
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
  woensdag 11 april 2012 @ 19:39:02 #222
370539 kucher
is snucher
pi_110196006
Meerdere tags in 1 veld is idd de WTF, daardoor kun je niet SELECT DISTINCT gebruiken of GROUP BY. Met een genormaliseerde database kan dit wel, je hebt dan een aparte tabel met tags en een koppeltabel om de tags ergens aan toe te wijzen.

Met een stored procedure die alle tags in een tijdelijke tabel opslaat en vervolgens erop los joint kan het wel maar dat is beduidend meer werk, fout-gevoelig en lang niet zo snel in uitvoering. Iets beters dan dit schiet me niet zo gauw te binnen. Een recursieve query met een CTE zou nog een mogelijkheid kunnen zijn maar dat zou zomaar de WTF award van het jaar kunnen winnen.
  woensdag 11 april 2012 @ 19:42:06 #223
137776 boem-dikkie
Jedi Mind Baby!
pi_110196242
Hehe ja weet ik wel maar ik had geen zin om voor één of twee keer gebruik dat te doen.

Maar goed, misschien maar wel gewoon doen. :')
Ik weet niks van Hindoes. Wel van Samoerai en andere dingen.
  zaterdag 14 april 2012 @ 21:52:59 #224
113667 Keiichi
Konnichiwa!
pi_110328750
Ik heb ruzie met unique keys in innodb icm character sets.

Voorheen was alles latin1 encoding. Daar kon ik unique keys hebben die ook onderscheiden werden op puntjes op een a bv. 'ä' en 'a' waren elk uniek

Met utf8-general of utf8-unicode, niet meer :( Het is een database met gebruikersgegevens waarbij een unique key op gebruikersnaam rust, dus het is vrij vervelend als ik deze moet verwijderen ;)

Hoe kan ik unique keys toch goed laten werken op deze manier?
  zaterdag 14 april 2012 @ 23:38:01 #225
113667 Keiichi
Konnichiwa!
pi_110333694
Ik ben nog verder met character encodings aan het kloten, ik heb nu het volgende.

De huidige pagina is ISO-8859-1. Ik ben er achter gekomen dat goede browsers automatisch UTF-8 of karakters buiten ISO omzet naar htmlentities. Hierdoor leek het altijd of UTF8 nooit een probleem geweest is. Probleem is dat ik de output uit de database overal door htmlentities ga afvangen, waardoor data onbruikbaar is (alle &'s worden vervangen door & waardoor eerder gemaakt htmlentities() letterlijk getoond worden. Daar kan niemand wat mee.

Is er een mogelijkheid om htmlentities die bestaan met rust laten en alle ander karakters die geen htmlentitiy vormen wel door htmlentities()
abonnement Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')