Miksi ei toimi ?

Miksi tuo esimerkki ei toimi?

http://www.ohjelmointiputka.net/koodit_nayta.php?tunnus=1415

------


Notice: Trying to get property of non-object in /AAA/sessionHandler.class.php on line 134

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /AAA/sessionHandler.class.php:134) in /AAA/example.php on line 10

Warning: mysqli::query() [function.mysqli-query]: Couldn't fetch mysqli in /AAA/sessionHandler.class.php on line 175

-------

Rivillä 134 on:

if ($result->num_rows == 0) {

ja rivillä 175 on:

$this->socket->query("UPDATE sessions SET data = '$data', dateTouched = $uts WHERE sessionId = '$sessId';");


-----

Löytyykö toimiva samanlainen jostain?
7466
Äänestä

Muut lukivat myös

Vastaukset 7

Vanhimmat

eli et voi muutella headereita, jos vastauksen lähetys on jo aloitettu. Varsin yleinen virhe.

Eli et voi tehdä näin

Äänestä
  • >eli et voi muutella headereita, jos vastauksen lähetys on jo aloitettu. Varsin yleinen virhe.

    Tuo kai johtuu tuosta huomautuksesta joka tulee ennen sitä:

    "Notice: Trying to get property of non-object in /AAA/sessionHandler.class.php on line 134"

    >Tarkista miksi se mysql-haku ei onnistu ja sitten toimii.   

    Se epäonnistuu, koska tietokannassa ei ole mitään, mitä voisi päivittää, mitä taas voisi johtua tuosta ensimmäisestä huomautuksesta.

    Äänestä

  • MaraZZ kirjoitti:

    >eli et voi muutella headereita, jos vastauksen lähetys on jo aloitettu. Varsin yleinen virhe.

    Tuo kai johtuu tuosta huomautuksesta joka tulee ennen sitä:

    "Notice: Trying to get property of non-object in /AAA/sessionHandler.class.php on line 134"

    >Tarkista miksi se mysql-haku ei onnistu ja sitten toimii.   

    Se epäonnistuu, koska tietokannassa ei ole mitään, mitä voisi päivittää, mitä taas voisi johtua tuosta ensimmäisestä huomautuksesta.

    Onko olemassa jotain valmista "virallista" ratkaisua? Siis sessions tietojen tallentaminen MySQL tietokantaan. Luulen, että se on aika yleinen tarve?

    Äänestä

  • MaraZZ kirjoitti:

    Onko olemassa jotain valmista "virallista" ratkaisua? Siis sessions tietojen tallentaminen MySQL tietokantaan. Luulen, että se on aika yleinen tarve?

    onhan sulla varmasti php 4.1 tai uudempi ja käännetty mysqli extensionin kanssa? Muuten et voi mysqliä käyttää ja siksi se sanoo "Could not fetch mysqli"

    "In order to have these functions available, you must compile PHP with support for the mysqli extension."

    http://fi2.php.net/mysqli

    tossa ois projekti ja valmiit koodit

    http://websupport.sk/~stanojr/projects/session_mysql/

    Äänestä

  • Piru_ kirjoitti:

    onhan sulla varmasti php 4.1 tai uudempi ja käännetty mysqli extensionin kanssa? Muuten et voi mysqliä käyttää ja siksi se sanoo "Could not fetch mysqli"

    "In order to have these functions available, you must compile PHP with support for the mysqli extension."

    http://fi2.php.net/mysqli

    tossa ois projekti ja valmiit koodit

    http://websupport.sk/~stanojr/projects/session_mysql/

    "onhan sulla varmasti php 4.1 tai uudempi ja käännetty mysqli extensionin kanssa?"

    Mysqli laajennos tuli vasta PHP5:teen, parannettu versio Mysql laajennoksesta, sitä ennen käytössä oli Mysql laajennos, huomaa siis i lopussa. Myös PHP5:dessä toimii tuo Mysql laajennos. Joskin nämä on kiinni mitä php.ini:ssä on määrätty.

    Ja muutenkin tuo koodi käyttää PHP5:den olio-ominaisuuksia joten PHP pitää olla vähintään PHP5 tai uudempa.

    Kokeileppas


    Niin näät mikä PHP versio sinulla on ja mitä laajennoksia löytyy.



    "Onko olemassa jotain valmista "virallista" ratkaisua? Siis sessions tietojen tallentaminen MySQL tietokantaan. Luulen, että se on aika yleinen tarve?"

    Kyllähän noita valmiita scriptejä on vaikka kuinka, mutta niiden toimivuudesta jne... voi olla montaa mieltä, toki hyviäkin on kunhan vain viitsii kokeilla monia. Katsopas esim http://hotscripts.com/php

    Pear on tunnettu hyvistä scripteistä, monia on aikojensaatossa lisätty ihan PHP:n ytimeenkin joten sieltä kannattaa aina ensinmäiseksi vilkasta. Pear pakettia jaetaan myös PHP:n mukana.
    http://pear.php.net/search.php?q=session&in=packages

    Äänestä

  • Piru_ kirjoitti:

    onhan sulla varmasti php 4.1 tai uudempi ja käännetty mysqli extensionin kanssa? Muuten et voi mysqliä käyttää ja siksi se sanoo "Could not fetch mysqli"

    "In order to have these functions available, you must compile PHP with support for the mysqli extension."

    http://fi2.php.net/mysqli

    tossa ois projekti ja valmiit koodit

    http://websupport.sk/~stanojr/projects/session_mysql/

    Minulla on PHP5 ja MySQL5, myös mysqli on käännetty, ilman sitä se ei saanut yhteyttä tietokantaan ja valitti olemattomasta oliosta, en muista enää tarkasti mitä.

    Äänestä

  • ------ kirjoitti:

    "onhan sulla varmasti php 4.1 tai uudempi ja käännetty mysqli extensionin kanssa?"

    Mysqli laajennos tuli vasta PHP5:teen, parannettu versio Mysql laajennoksesta, sitä ennen käytössä oli Mysql laajennos, huomaa siis i lopussa. Myös PHP5:dessä toimii tuo Mysql laajennos. Joskin nämä on kiinni mitä php.ini:ssä on määrätty.

    Ja muutenkin tuo koodi käyttää PHP5:den olio-ominaisuuksia joten PHP pitää olla vähintään PHP5 tai uudempa.

    Kokeileppas


    Niin näät mikä PHP versio sinulla on ja mitä laajennoksia löytyy.



    "Onko olemassa jotain valmista "virallista" ratkaisua? Siis sessions tietojen tallentaminen MySQL tietokantaan. Luulen, että se on aika yleinen tarve?"

    Kyllähän noita valmiita scriptejä on vaikka kuinka, mutta niiden toimivuudesta jne... voi olla montaa mieltä, toki hyviäkin on kunhan vain viitsii kokeilla monia. Katsopas esim http://hotscripts.com/php

    Pear on tunnettu hyvistä scripteistä, monia on aikojensaatossa lisätty ihan PHP:n ytimeenkin joten sieltä kannattaa aina ensinmäiseksi vilkasta. Pear pakettia jaetaan myös PHP:n mukana.
    http://pear.php.net/search.php?q=session&in=packages

    PHP Version 5.2.0

    mysql

    MySQL Support   enabled
    Active Persistent Links   0
    Active Links   0
    Client API version   5.0.27
    MYSQL_MODULE_TYPE   no value
    MYSQL_SOCKET   /tmp/mysql.sock
    MYSQL_INCLUDE   no value
    MYSQL_LIBS   no value

    Directive   Local Value   Master Value
    mysql.allow_persistent   On   On
    mysql.connect_timeout   60   60
    mysql.default_host   no value   no value
    mysql.default_password   no value   no value
    mysql.default_port   no value   no value
    mysql.default_socket   no value   no value
    mysql.default_user   no value   no value
    mysql.max_links   Unlimited   Unlimited
    mysql.max_persistent   Unlimited   Unlimited
    mysql.trace_mode   Off   Off

    mysqli

    MysqlI Support   enabled
    Client API library version   5.0.27
    Client API header version   5.0.27
    MYSQLI_SOCKET   /tmp/mysql.sock

    Äänestä

Kommentoi aloitusta


MaraZZ kirjoitti:

Miksi tuo esimerkki ei toimi?

http://www.ohjelmointiputka.net/koodit_nayta.php?tunnus=1415

------


Notice: Trying to get property of non-object in /AAA/sessionHandler.class.php on line 134

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /AAA/sessionHandler.class.php:134) in /AAA/example.php on line 10

Warning: mysqli::query() [function.mysqli-query]: Couldn't fetch mysqli in /AAA/sessionHandler.class.php on line 175

-------

Rivillä 134 on:

if ($result->num_rows == 0) {

ja rivillä 175 on:

$this->socket->query("UPDATE sessions SET data = '$data', dateTouched = $uts WHERE sessionId = '$sessId';");


-----

Löytyykö toimiva samanlainen jostain?

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