cookies

Mitä eroa on Kympin ja koti.mbnetin kotisivutiloissa? Toimiiko samat soodit molemmissa?
15411
Äänestä

Muut lukivat myös

Vastaukset 15

Vanhimmat

En tiedä kympin asetuksista, mutta oikein tehty koodi, toimii missä tahansa palvelimella. Katsoppas phpinfo(); se kertoo mitkä asetukset palvelimella on.

Oletkos muuten katsonut koodista, onko siinä käytetty vanhaa tapaa viitata evästeisiin ja muihikin muuttujiin, jos on, niin register_globall = off tekee scriptistä toimimattoman. Tämä asetus on suositus nykyään. Toi asetus voi aiheuttaa sinun ongelmasi.


ennen

if ($keksi == 'juu') ....

nykyään

if ($_COOKIE['keksi'] == 'juu')

Jos koodissa vanha tapa, niin $keksi muuttuja ei saa ikinä arvoa, jolloin keksin tarkistus ei onnistu.


Laiska ihminen korjaa ton
$keksi = $_COOKIE['keksi'];

Äänestä
  • Tässä cookiesiin liittyvät koodipätkät:

    .
    .
    .
    if($_COOKIE[galluppi] == "voted"){
    $size = "9"; // jos ollaan äänestetty, eli katsotaan vastauksia
    }else{
    $size = "12"; // jos taas ollaan klikkaamassa äänestyslinkkiä...
    }
    .
    .
    .
    if($_COOKIE[galluppi] == "voted"){ // jos ollaan äänestetty, tulostetaan gallupin vastaukset
    $colspan = " colspan='2'";
    .
    .
    .
    if($k != "" && $v != "" && $_COOKIE[galluppi] != "voted"){
    $vasa = explode("~¦~", $filu[$k]);
    .
    .
    .
    setcookie("galluppi", "voted", time() 604800, "/"); // keksi jottei voi äänestää uudestaan aivan heti...
    header("location: galmo.php"); // mennään katsomaan tulokset!
    }




    ob_end_flush();
    ?>

    Äänestä

  • Rane kirjoitti:

    Tässä cookiesiin liittyvät koodipätkät:

    .
    .
    .
    if($_COOKIE[galluppi] == "voted"){
    $size = "9"; // jos ollaan äänestetty, eli katsotaan vastauksia
    }else{
    $size = "12"; // jos taas ollaan klikkaamassa äänestyslinkkiä...
    }
    .
    .
    .
    if($_COOKIE[galluppi] == "voted"){ // jos ollaan äänestetty, tulostetaan gallupin vastaukset
    $colspan = " colspan='2'";
    .
    .
    .
    if($k != "" && $v != "" && $_COOKIE[galluppi] != "voted"){
    $vasa = explode("~¦~", $filu[$k]);
    .
    .
    .
    setcookie("galluppi", "voted", time() 604800, "/"); // keksi jottei voi äänestää uudestaan aivan heti...
    header("location: galmo.php"); // mennään katsomaan tulokset!
    }




    ob_end_flush();
    ?>

    Äkkivilkaisulla noi näyttäisi ihan hyviltä, joskin se kuuluisi $_COOKIE['galluppi'] tosin scriptin toimintaan tolla ei ole vaikutusta, mutta saat huomautuksen asiasta, mikäli ne ei ole PHP:n asetuksissa estetty.

    Tutkailin tota koodia ohjelmistoputkassa, niin näyttäisi olevan tehty aikaan jolloin oletuksena register_global=on

    Oletko ihan varma, että ääni tallentuu?
    Oma arvaukseni on, ettei tallennu, etkä edes saa keksiäkään.


    echo "";
    print_r($_COOKIE);
    echo "";

    Kirjoitappas noin tiedoston alkuun, niin saat selville mitä kaikkea keksissä on, jos on mitään.


    Kokeile myös kirjoittaa alkuun
    $k = $_GET['k'];
    $v = $_GET['v'];
    $PHP_SELF = $_SERVER['PHP_SELF'];


    Sillä jos k ja v muuttuja ei saa arvoja johtuen tosta register asetuksesta, niin ikinä alla oleva ehtolause ei toteudu joten et saa keksiäkään

    if($k != "" && $v != "" && $_COOKIE[galluppi] !=.....


    Noi lisäykset kirjoitetaan tagien sisään

    Äänestä

  • ---------- kirjoitti:

    Äkkivilkaisulla noi näyttäisi ihan hyviltä, joskin se kuuluisi $_COOKIE['galluppi'] tosin scriptin toimintaan tolla ei ole vaikutusta, mutta saat huomautuksen asiasta, mikäli ne ei ole PHP:n asetuksissa estetty.

    Tutkailin tota koodia ohjelmistoputkassa, niin näyttäisi olevan tehty aikaan jolloin oletuksena register_global=on

    Oletko ihan varma, että ääni tallentuu?
    Oma arvaukseni on, ettei tallennu, etkä edes saa keksiäkään.


    echo "";
    print_r($_COOKIE);
    echo "";

    Kirjoitappas noin tiedoston alkuun, niin saat selville mitä kaikkea keksissä on, jos on mitään.


    Kokeile myös kirjoittaa alkuun
    $k = $_GET['k'];
    $v = $_GET['v'];
    $PHP_SELF = $_SERVER['PHP_SELF'];


    Sillä jos k ja v muuttuja ei saa arvoja johtuen tosta register asetuksesta, niin ikinä alla oleva ehtolause ei toteudu joten et saa keksiäkään

    if($k != "" && $v != "" && $_COOKIE[galluppi] !=.....


    Noi lisäykset kirjoitetaan tagien sisään

    -Täällä voi äänestää:

    http://users.kymp.net/p407445a/galmo.php


    -Ja admin osioon tulee ääni

    http://users.kymp.net/p407445a/galmo-admin.php


    -Mutta äänestyt palkit jää tulematta


    --------80%
    --20%

    Äänestä


  • Rane kirjoitti:

    Täällä siis äänestät ja saat palkit eteen
    -http://mbnet.fi/winuus/galmo.php


    Tänne ääni tulee
    -http://mbnet.fi/winuus/galmo-admin.php

    Näyttäisi siltä, että koodi toimisi, mutta jostain syystä ei lähetä keksiä. Taas mbnetillä tulee keksi kun on äänestänyt.

    Kokeileppas ihan näin

    testi.php


    Kun päivität sivua (selaimen päivitä napilla), niin pitäisi saada keksille arvo, jos ei toimi niin kokeileppas

    testi.php

    Äänestä

  • ---------- kirjoitti:

    Näyttäisi siltä, että koodi toimisi, mutta jostain syystä ei lähetä keksiä. Taas mbnetillä tulee keksi kun on äänestänyt.

    Kokeileppas ihan näin

    testi.php


    Kun päivität sivua (selaimen päivitä napilla), niin pitäisi saada keksille arvo, jos ei toimi niin kokeileppas

    testi.php

    Tässä on tämä:



    http://users.kymp.net/p407445a/testi.php


    Tässä on taas tämä:

    Äänestä

  • Rane kirjoitti:

    Tässä on tämä:



    http://users.kymp.net/p407445a/testi.php


    Tässä on taas tämä:

    Hyvin noista esimerkeistä ylin ja alin toimii. Esimerkkin jälkeen kokeilin käydä tolla galluppi sivulla, niin se näytti tuloksen kuten kuuluukin, joten scriptissä on jotain vikaa.

    Koitas korvata scriptin setcookie..... tolla ylimmällä (siinä on pieni ero scriptissä olevaan), ja kokeile sitten. Katso myös ettei rivin alussa ole // merkkiä, se tekee rivistä kommentin, jolloin ei tietenkään lähetetä keksiä. Sekä se setcookie on omalla rivillä.

    Äänestä

  • ---------- kirjoitti:

    Hyvin noista esimerkeistä ylin ja alin toimii. Esimerkkin jälkeen kokeilin käydä tolla galluppi sivulla, niin se näytti tuloksen kuten kuuluukin, joten scriptissä on jotain vikaa.

    Koitas korvata scriptin setcookie..... tolla ylimmällä (siinä on pieni ero scriptissä olevaan), ja kokeile sitten. Katso myös ettei rivin alussa ole // merkkiä, se tekee rivistä kommentin, jolloin ei tietenkään lähetetä keksiä. Sekä se setcookie on omalla rivillä.

    Ei toimi!

    Voisiko hakemistorakenne vaikuttaa? Kuten tämä kohta:

    header("location: galmo.php");


    Entä tämä kohta koodissa, voiko siinä olla mitään ihmeellistä?:

    .
    .
    .
    else{
    $va = $s;
    $ky = $date;
    $vastaus = "$osa[0]"; // jos ei olla äänestetty, tulostetaan vastaus-vaihtoehdot
    }
    .
    .
    .

    Äänestä

  • Rane kirjoitti:

    Ei toimi!

    Voisiko hakemistorakenne vaikuttaa? Kuten tämä kohta:

    header("location: galmo.php");


    Entä tämä kohta koodissa, voiko siinä olla mitään ihmeellistä?:

    .
    .
    .
    else{
    $va = $s;
    $ky = $date;
    $vastaus = "$osa[0]"; // jos ei olla äänestetty, tulostetaan vastaus-vaihtoehdot
    }
    .
    .
    .

    Ei voi, jos hakemisto rakenne olisi väärä, niin saisit joko virheilmoituksia tai pelkkää valkoista tai sivua ei löydy ilmoitukset.

    Eipä tuossa alemmassakaan mitään ihmeellistä ole mikä pitäisi toimintaa haitata, vaikka onkin käytetty vanhaa tapaa.....

    testi.php



    Vaikka eihän ton ob.... jutun pitäisi mitään vaikuttaa lähetetäänkö keksejä vai ei.


    Jotenkin tuntuu, että ratkaisua etitään liian kaukaanta, ja vika on pienenpieni moka jossain.


    Tarjoaakos toi galluppi jotain erikois ominaisuuksia? vai löytyiskös toimiva vaikkapa http://hotscripts.com/PHP/Scripts_and_Programs/Polls_and_Voting/index.html

    Äänestä

  • ---------- kirjoitti:

    Ei voi, jos hakemisto rakenne olisi väärä, niin saisit joko virheilmoituksia tai pelkkää valkoista tai sivua ei löydy ilmoitukset.

    Eipä tuossa alemmassakaan mitään ihmeellistä ole mikä pitäisi toimintaa haitata, vaikka onkin käytetty vanhaa tapaa.....

    testi.php



    Vaikka eihän ton ob.... jutun pitäisi mitään vaikuttaa lähetetäänkö keksejä vai ei.


    Jotenkin tuntuu, että ratkaisua etitään liian kaukaanta, ja vika on pienenpieni moka jossain.


    Tarjoaakos toi galluppi jotain erikois ominaisuuksia? vai löytyiskös toimiva vaikkapa http://hotscripts.com/PHP/Scripts_and_Programs/Polls_and_Voting/index.html

    Alkuperäinen koodi näyttää toimivan, joten oon kai jotenkin hölmöily sinne nykyiseen (ei toimivaan koodiin) jotakin ylinmääräistä. Pitää viel jaksaa verrata joskus et mitä ylinmääräistä oon laittanut siihen nykyiseen koodiin. Ilmoittelen sit tänne et mikä oli lopullinen virhe. Ainakin tuli opeteltuu jotakin kekseihin liittyvää.

    Äänestä

  • Rane kirjoitti:

    Alkuperäinen koodi näyttää toimivan, joten oon kai jotenkin hölmöily sinne nykyiseen (ei toimivaan koodiin) jotakin ylinmääräistä. Pitää viel jaksaa verrata joskus et mitä ylinmääräistä oon laittanut siihen nykyiseen koodiin. Ilmoittelen sit tänne et mikä oli lopullinen virhe. Ainakin tuli opeteltuu jotakin kekseihin liittyvää.

    Sain rajattua viallisen koodin pätkän mut en vielläkään tajua mikä on vialla?






    Tässä viallinen koodi:















    IMG#p {background:#44a044}
    IMG#n {background:#000000}







    IMG#p {background:#33CCFF}
    IMG#n {background:#336699}

    Äänestä

  • Rane kirjoitti:

    Sain rajattua viallisen koodin pätkän mut en vielläkään tajua mikä on vialla?






    Tässä viallinen koodi:















    IMG#p {background:#44a044}
    IMG#n {background:#000000}







    IMG#p {background:#33CCFF}
    IMG#n {background:#336699}

    Vika on siinä, kun tulostat ennen bufferin (ob_start) aloitusta jotain.

    Keksit lähetetään sivun headerin mukana joten niitten täytyy olla koodissa ihan ensinmäisenä, ennen mitään tulostusta. Tai sitten käytetään tota PHP:n buffer ominaisuutta, jolloin PHP-tulkki suorittaa koodin ja sitten lisää headerit ja keksien lähetyksen ensinmäiseksi. Tämä ei onnistu, koska olet jo bufferin aloitusta ennen tulostanut jotain.

    Laitappas ihan ensinmäiseksi.

    sitten tarvittavat jutut.


    Hyvä, ettet antanut periksi, noin sitä oppii.


    Vielä pikkuinen huomautus, HTML-koodisi on virheellinen.
    Puuttuu head osio
    Suljet bodyn sivun alussa, tämä pitää tehdä sivun lopussa, samoin html suljetaan myös sivun lopussa. Joten laitappas ne PHP-koodin jälkeen. Eipä mikään selain kai tohon sekoaisi, mutta koodin on hyvä olla standartien mukaan, koska selaimet on tehty tulkkaamaan standartien mukaista koodia.

    Äänestä

  • ---------- kirjoitti:

    Vika on siinä, kun tulostat ennen bufferin (ob_start) aloitusta jotain.

    Keksit lähetetään sivun headerin mukana joten niitten täytyy olla koodissa ihan ensinmäisenä, ennen mitään tulostusta. Tai sitten käytetään tota PHP:n buffer ominaisuutta, jolloin PHP-tulkki suorittaa koodin ja sitten lisää headerit ja keksien lähetyksen ensinmäiseksi. Tämä ei onnistu, koska olet jo bufferin aloitusta ennen tulostanut jotain.

    Laitappas ihan ensinmäiseksi.

    sitten tarvittavat jutut.


    Hyvä, ettet antanut periksi, noin sitä oppii.


    Vielä pikkuinen huomautus, HTML-koodisi on virheellinen.
    Puuttuu head osio
    Suljet bodyn sivun alussa, tämä pitää tehdä sivun lopussa, samoin html suljetaan myös sivun lopussa. Joten laitappas ne PHP-koodin jälkeen. Eipä mikään selain kai tohon sekoaisi, mutta koodin on hyvä olla standartien mukaan, koska selaimet on tehty tulkkaamaan standartien mukaista koodia.

    Tämä auttoi:


    Laitappas ihan ensinmäiseksi.

    sitten tarvittavat jutut.


    Kumma kun koti.mbnetissä toimii, vaikka alussa onkin jotakin "sitten tarvittavat jutut" koodia?


    No nyt ainakin vika saatii selvitettyä, et kiitoksia paljon.

    Äänestä

  • Rane kirjoitti:

    Tämä auttoi:


    Laitappas ihan ensinmäiseksi.

    sitten tarvittavat jutut.


    Kumma kun koti.mbnetissä toimii, vaikka alussa onkin jotakin "sitten tarvittavat jutut" koodia?


    No nyt ainakin vika saatii selvitettyä, et kiitoksia paljon.

    Ilmeisesti Kympin asetuksissa jotain toisin, kyllä se näyttäisi noin toimivan testipalvelimellanikin.

    Tosin sivun alkuun toi kannattanee silti laittaa jos sitä koodissaan tarttee. Mbnetissä toi ilmeisesti toimisi sitten ilman tota bufferiakin, jolloin saataisiin nopeutta muutama nanosekuntti lisää :)

    Äänestä

Kommentoi aloitusta


Rane kirjoitti:

Mitä eroa on Kympin ja koti.mbnetin kotisivutiloissa? Toimiiko samat soodit molemmissa?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu