abonnement Unibet Coolblue Bitvavo
pi_46558149
quote:
Dat is een mooie, enige puntje is dat hij het niet altijd moet replacen. Op het moment voert hij eerst een DELETE query uit, waarbij er enkele unieke eigenschappen moeten matchen (ik werk dus helaas niet op ID). Daarna een Insert, met dezelfde unieke eigenschappen, en nog enkele andere gegevens.

Er is dus niet altijd een record aanwezig met de eigenschappen die bij de delete matchen, alleen het inserten is iets dat altijd moet. Dus wat ik mij afvroeg: Is het netjes om de twee queries achter elkaar te plakken?
pi_46563571
niet echt een php vraagje, maar hoe kan ik in flash dezelfde xml-file opnieuw inladen zonder de pagina te herladen?

het xml bestand wordt onLoad geladen en ik dmv ajax zet ik een paar variabelen die in de xml komen te staan.

nu wil ik deze xml opnieuw inladen maar als ik dan document.flash_movie.Play(); doe laad ie dezelfde waarden in, als ik op F5 druk is het wel aangepast.

iemand een idee?

flash is niet zo mijn ding
pi_46580012
quote:
Op donderdag 22 februari 2007 14:18 schreef Geqxon het volgende:

[..]

Dat is een mooie, enige puntje is dat hij het niet altijd moet replacen. Op het moment voert hij eerst een DELETE query uit, waarbij er enkele unieke eigenschappen moeten matchen (ik werk dus helaas niet op ID). Daarna een Insert, met dezelfde unieke eigenschappen, en nog enkele andere gegevens.
waarom wil je dit in 1 query doen? Voordat het qua performance wat uitmaakt moet je het wel heel veel records updaten
pi_46580101
quote:
Op donderdag 22 februari 2007 16:58 schreef Tiemie het volgende:
nu wil ik deze xml opnieuw inladen maar als ik dan document.flash_movie.Play(); doe laad ie dezelfde waarden in, als ik op F5 druk is het wel aangepast.
hoe wordt de XML ingelezen?
Misschien zit die in een functie die alleen aangeroepen wordt als er nog niks ingeladen is? Waardoor die bij de 2x keer dus niks doet en gewoon de oude data gebruikt.

Als het bestand de 2e keer 'echt' wordt geladen zou die gewoon de nieuwe waarden moeten bevatten
pi_46580319
quote:
Op donderdag 22 februari 2007 23:32 schreef Xcalibur het volgende:

[..]

waarom wil je dit in 1 query doen? Voordat het qua performance wat uitmaakt moet je het wel heel veel records updaten
Schoonheidsperfectie
pi_46580604


lijkt me lastig, als je niet van tevoren weet of er een record te updaten is... als je hem al hebt is het gemakkelijker, maar dan heb je in principe al eerder een select gedaan
pi_46581395
Het gaat bij mij om een cache-script. Om het script uit te leggen:

  • Eerst kijken of de gezochte data in de database bestaat, en kijken hoe recent deze data is.
  • Als de data gevonden is, en jonger dan 24 uur is >>> Laden
  • Als de data niet gevonden is, of ouder dan 24 uur >>> Uit een exterene website laden, de delete query gevolgd door de insert query om de vers opgehaalde data in de database te stoppen.

    Werkt prima, maar imho wil ik het net ietsjes strakker hebben. Vandaar. Maar ik zie al een optie, namelijk de check om te kijken of de data uberhaupt wel bestaat (mysql_num_rows), gaat goed komen.
  • pi_46585146
    quote:
    Op vrijdag 23 februari 2007 00:12 schreef Geqxon het volgende:
    Het gaat bij mij om een cache-script. Om het script uit te leggen:

  • Eerst kijken of de gezochte data in de database bestaat, en kijken hoe recent deze data is.
  • Als de data gevonden is, en jonger dan 24 uur is >>> Laden
  • Als de data niet gevonden is, of ouder dan 24 uur >>> Uit een exterene website laden, de delete query gevolgd door de insert query om de vers opgehaalde data in de database te stoppen.

    Werkt prima, maar imho wil ik het net ietsjes strakker hebben. Vandaar. Maar ik zie al een optie, namelijk de check om te kijken of de data uberhaupt wel bestaat (mysql_num_rows), gaat goed komen.
  • Gewoon een query maken die als extra eis meeneemt dat de data niet ouder dan 24 uur mag zijn. Als je de datum in een DATETIME of een Unix Timestamp (unsigned int) opslaat dan moet dat lukken.
    pi_46585681
    quote:
    Op vrijdag 23 februari 2007 08:37 schreef Light het volgende:
    Gewoon een query maken die als extra eis meeneemt dat de data niet ouder dan 24 uur mag zijn. Als je de datum in een DATETIME of een Unix Timestamp (unsigned int) opslaat dan moet dat lukken.
    dan heb je wel een extra query nodig om de data ouder dan 24 uur op te zoeken en weg te gooien...
    Tenzij je die niet weggooit natuurlijk
      vrijdag 23 februari 2007 @ 09:33:46 #60
    12880 CraZaay
    prettig gestoord
    pi_46586068
    quote:
    Op vrijdag 23 februari 2007 09:11 schreef Xcalibur het volgende:

    [..]

    dan heb je wel een extra query nodig om de data ouder dan 24 uur op te zoeken en weg te gooien...
    Tenzij je die niet weggooit natuurlijk
    Draai die 'opschoonquery' 1 keer per dag ofzo zou ik zeggen. Dat maakt het allemaal een stuk eenvoudiger denk ik.
    pi_46586412
    Om jullie allemaal maar te beantwoorden:

    -In de tabel heb ik al een kolom met daarin de waarde van nu + 24 uur. In de query staat dus feitelijk
    1
    2
    3
    <?php
    " WHERE Expires > " . time() . "
    ?>


    Zodra ik geen resultaten met de select-query krijg, betekend dat dus twee dingen:
    -De data is staat niet in de database
    -De data is ouder dan 24 uur.

    In dat geval schiet hij dus de else-statement in, waar hij de volgende dingen doet:
    -De data van een externe website ophalen (traag!)
    -De oude data weggooien (of iig een poging tot)
    -De versgehaalde data in de database stoppen

    De opschoonquery is daarom dus niet nodig, aangezien de data bij de eerstvolgende search automatisch geupdate zal worden. Leuk systeem, en het draait prima. Enige wat ik dus ga vervangen is het kijken waarom hij de data niet op kan halen, hoe dat dus komt. En aan de hand daarvan dus de juiste query draaien.
      vrijdag 23 februari 2007 @ 10:03:06 #62
    12880 CraZaay
    prettig gestoord
    pi_46586580
    Waarom niet "Expires > NOW()" ?
    pi_46586685
    Omdat "time()" de huidige waarde in de vorm van een UNIX timestamp presenteert. Het veld "Expires" is dan ook een doodsimpele integer van 11 tekens lang, in plaats van het imho bloated MySQL date format.
    pi_46587727
    Dat is toch enorm onhandig

    Trouwens, nu ik hier toch ben
    Ik ben bezig met een soort van CMS, maar het lukt me niet om paragrafen netjes te krijgen. Ik kan wel nl2br gebruiken, maar ik heb liever dat er van zelf paragrafen worden gemaakt van de nieuwe lijnen zonder zelf html of ubb in te voeren.
      FOK!-Schrikkelbaas vrijdag 23 februari 2007 @ 11:06:07 #65
    1972 Swetsenegger
    Egocentrische Narcist
    pi_46587950
    quote:
    Op vrijdag 23 februari 2007 10:08 schreef Geqxon het volgende:
    Omdat "time()" de huidige waarde in de vorm van een UNIX timestamp presenteert. Het veld "Expires" is dan ook een doodsimpele integer van 11 tekens lang, in plaats van het imho bloated MySQL date format.

    Goh er zitten ook - in je database veld... wat bloated. En je kan er ongeveer 1000 keer handiger mee uit de voeten.
    pi_46599751
    quote:
    Op vrijdag 23 februari 2007 10:56 schreef super-muffin het volgende:
    Ik ben bezig met een soort van CMS, maar het lukt me niet om paragrafen netjes te krijgen. Ik kan wel nl2br gebruiken, maar ik heb liever dat er van zelf paragrafen worden gemaakt van de nieuwe lijnen zonder zelf html of ubb in te voeren.
    Afhankelijk van hoe je je CMS in elkaar hebt gezet kun je ervoor kiezen om twee opeenvolgende line breaks om te toveren in een nieuwe paragraaf? Dan moet je natuurlijk wel de paragrafen tekst goed bepalen, omdat je daar de <p>...</p> omheen moet zetten
    pi_46600274
    quote:
    Op vrijdag 23 februari 2007 11:06 schreef Swetsenegger het volgende:

    [..]


    Goh er zitten ook - in je database veld... wat bloated. En je kan er ongeveer 1000 keer handiger mee uit de voeten.
    Ieder zijn ding. Ik werk liever gewoon met timestamps als integers, universeel. Pas bij het tonen in de browser zet ik het in DD-MM-YYYY formaat.
    pi_46600456
    quote:
    Op vrijdag 23 februari 2007 10:08 schreef Geqxon het volgende:
    Het veld "Expires" is dan ook een doodsimpele integer van 11 tekens lang
    Een integer van 11 tekens lang?

    Een INT(11) betekent niets anders dan dat je een integer veld hebt die bij een geactiveerde optie ZEROFILL een getal weergeeft dat wordt geprepad met nullen totdat het 11 nummers bevat. Zonder die optie betekent die 11 helemaal niéts.
    pi_46600517
    quote:
    Op vrijdag 23 februari 2007 11:06 schreef Swetsenegger het volgende:

    [..]


    Goh er zitten ook - in je database veld... wat bloated. En je kan er ongeveer 1000 keer handiger mee uit de voeten.
    Niet eens, MySQL slaat tijd en datum intern ook op aan de hand van timestamps. Op het moment dat je een SELECT doet of de waarden vergelijkt aan de hand van zo'n datum/tijd dan zet MySQL de boel automagisch om naar een bepaalde representatie.

    Verder ben ik benieuwd naar wat jij denkt meer te kunnen met een DATETIME / TIMESTAMP veld dan met een eigen timestamp die pas in de frontend voor presentatie wordt omgezet?
    pi_46602102
    Hey,

    Nu moet ik ineens voor school bezig met PHP een aantal oprdachten maken waaronder de basis van cookies. Wanneer ik een script maak met een cookie er in, en het in xampp laad gebeurd er niets. Weet iemand toevallig of cookies aangezet moeten worden in xampp ofzo?

    Ik heb zelf mijn internet explorer al ingesteld dat er een prompt komt wanneer een cookie opgeslagen zou moeten worden. Maar hij prompt ook niet.
    pi_46603074
    quote:
    Op vrijdag 23 februari 2007 19:01 schreef Wiehoe het volgende:
    Nu moet ik ineens voor school bezig met PHP een aantal oprdachten maken waaronder de basis van cookies. Wanneer ik een script maak met een cookie er in, en het in xampp laad gebeurd er niets. Weet iemand toevallig of cookies aangezet moeten worden in xampp ofzo?

    Ik heb zelf mijn internet explorer al ingesteld dat er een prompt komt wanneer een cookie opgeslagen zou moeten worden. Maar hij prompt ook niet.
    Laat eens wat code zien? Dan weten we ook meteen hoe je je cookies probeert op te slaan. Er is niet zoiets als het activeren van cookies in PHP, aangezien het in feite een HTTP-header is.
    pi_46603646
    1
    2
    3
    4
    5
    6
    7
    <?php
    $count++;
    setcookie('count', $count);
    error_reporting(E_ALL);

    echo($count);
    ?>


    Dit moet dus oplopen volgens zo'n php boek.
    pi_46603799
    quote:
    Op vrijdag 23 februari 2007 19:54 schreef Wiehoe het volgende:

    [ code verwijderd ]

    Dit moet dus oplopen volgens zo'n php boek.
    Allereerst zul je de superglobal $_COOKIE['count'] moeten gebruiken om de cookie op te vragen. Verder is het slim om een expire time op te geven in setcookie, zoiets als dit:
    1
    2
    3
    <?php
    setcookie
    ('count'$counttime() + 3600); // één uur is deze cookie geldig
    ?>
    pi_46603947
    Bedankt, ik heb dit er van gemaakt, en het werkt:

    1
    2
    3
    4
    5
    6
    7
    <?php
    $count = $_COOKIE['count'] + 1;
    setcookie('count', $count, time() + 3600);
    error_reporting(E_ALL);

    echo $_COOKIE['count'];
    ?>


    Ik vind het overigens maar raar dat het dan in zo'n boek helemaal verkeerd staat beschreven. En dan geven ze wel specifiek aan dat er geen enter gelijk na de <?php mag komen. omdat die dan een Warning aangeeft.
    pi_46604637
    quote:
    Op vrijdag 23 februari 2007 20:02 schreef Wiehoe het volgende:
    Ik vind het overigens maar raar dat het dan in zo'n boek helemaal verkeerd staat beschreven.
    Daarom ben ik ook absoluut geen fan van boeken om een taal te leren, zeker niet als de taal zelf in constante ontwikkeling is.
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')