Kirjautumisongelma (PHP, MySQL ja rutiinit)

mkoodari

Terve!

Olen saanut korjattavakseni toisen henkilön tekemän nettisivuston vuosien takaa mutta vastaan on tullut esteitä. Osaamiseni PHP:stä ja MySQL:stä on vielä melko perusjuttuja ja koodin kommentoimattomuus ei ole helpottanut asiaa joten ajattelin kysyä olisiko täällä viisaampia päitä auttamassa tai edes kertomassa vinkkejä mistä saattaisi kiikastaa. Olisin todella kiitollinen kaikista neuvoista ja ehdotuksista kun itselläni on vielä hakusessa.

Sivusto on pyörinyt kuulemma jollain aiemmalla WAMP-palvelimen Windows NT-aikaisella versiolla. Wampin alla olevat tiedostot otettiin talteen ja siirrettiin uudelle versiolle vaan sivusto antoi vaikka minkälaisia virheilmoituksia joskin suurimmasta osasta tosin päästiin eroon muuttamalla

3

135

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • mkoodari

      Rutiinissa oleva koodi:

      DROP PROCEDURE logIn;
      delimiter // ;
      CREATE PROCEDURE logIn(IN unames CHAR, passwds CHAR)
      BEGIN
      DECLARE userid,licensecount,license, company INT DEFAULT 0;

      SELECT id FROM sysuser WHERE uname=unames AND passwd=passwds INTO userid;
      SET @company=0;
      set @log=0;
      /*Onko käyttäjätunnus ja salasana oikein*/
      IF (userid > 0) THEN
      /*Onko käyttäjällä yhtään lisenssiä*/
      SELECT COUNT(id) FROM user_application_license WHERE user_id= userid INTO licensecount;
      IF (licensecount >0) THEN
      SELECT count(user_application_license.id) FROM user_application_license,application_license,application WHERE user_application_license.application_license_id=application_license.id AND application_license.application_id=application.id AND user_application_license.user_id=userid AND application.nro=1 AND user_application_license.starts >=CURDATE() AND user_application_license.expires

    • enkoodari

      Aluksi sanottakoon että en jaksa lukea koodia läpi, itse kirjottaisin varmaan uudelleen koko palikan jos vähänkään epäilisin toimivuutta ja laatua.
      Tässä nyt kuitenkin pika-apu vastaus eli mistä löytää speksit...

      http://dev.mysql.com/doc/refman/5.5/en/call.html

      > Millä tapaa voin saada varmistuksen että kyseinen komento edes suoritetaan?

      Testaat phpMyAdminin kautta tai komentroiviltä mysql clientillä.
      Korvaat $uname ja $passwd muuttujat oikeilla tiedoilla.
      Suorituksen jälkeen ja/tai aikana voit tarkistella muuttujien arvoja jolloin mahdolliset onglemat tulee ilmi.

      > @-merkillä pyritään vaimentamaan mahdolliset virheilmoitukset.

      Ei pidä paikkaansa. Vain PHP koodin suorituksen aikana vaientaa virheet. Tuossa ajetaan SQL koodia PHP koodin sijaan.

      http://dev.mysql.com/doc/refman/5.5/en/set-statement.html

      > Olen koittanut tulostaa tuota $query-muuttujan sisältöä

      $query muuttuja PHP koodissa on vain SQL lauseen väliaikaista taltioimista varten, suorittamalla $query muuttujan sisältämä SQL koodi tulee suorittaa MySQL palvelimella ja sen jälkeen kysellään tulokset MySQL palvelimelta.

      Eli $result muuttuja on linkki vastaukseen joka sinua kiinnostaa, voit lukea resurssit mysql_* komentojen avulla.

      • mkoodari

        Pahoittelut että vastaamisestani kesti näinkin kauan. Tuo kiinteiden arvojen laittaminen tunnuksen ja salasanan tilalle auttoivat aluksi kirjautumisessa ja myöhemmin siinä että sain koko kirjautumisjutun korjattua. Muuhun palveluun jäi vielä paljon korjattavaa mutta ei niistä sen enempää täällä. Iso kiitos kuitenkin vinkeistä! :)


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Kotihoito suomussalmella

      Mitämieltä ootte suomussalmen kotihoidosta?
      Suomussalmi
      40
      5585
    2. Maataloustuet pois

      Jokainen maksakoon harrastuksensa itse. Eihän golfin peluutakaan maksa yhteiskunta.
      Maailman menoa
      223
      4541
    3. Joko alkaa menemään tajuntaan tämä yliluonnollinen yhteys?

      Varmaan pikkuhiljaa. Muista olla kiltisti ❤️
      Ikävä
      36
      4484
    4. Australia, Britannia ja Kanada tunnustivat Palestiinan

      Aikooko Petteri Lapanen pysytellä persujen ja uskovaisten panttivankina ja jättää Suomen historian väärälle puolelle?
      Maailman menoa
      72
      4295
    5. Kohtalokas laukaus

      IL 20.9.25 "Ihminen kuoli baarin edustalla Kajaanissa Poliisi ei epäile tapauksessa rikosta." "Kajaanin keskustassa on k
      Kajaani
      26
      4262
    6. Työeläkkeen saamiseksi olisi tehtävä töitä

      Meillä on Suomessa iso joukko ihmisiä, joilla olisi vielä työkykyä jäljellä, mutta joilta puuttuu arjesta mielekäs tekem
      Maailman menoa
      160
      3765
    7. Mitä juuri sinulle kuuluu?

      Tänään? Rehellisesti.
      Ikävä
      92
      3112
    8. Joulukinkku NYT

      Sian kankuista tulee vielä pula. Nyt on oikea aika hankkia joulukinkku.
      Maailman menoa
      20
      3035
    9. Muistattekos kun Sannan aikana suomalaisten varallisuuteen lisättiin viidennes

      Köyhät voittivat eniten mutta rikkaimmat kuitenkin köyhtyi!
      Maailman menoa
      27
      3021
    10. Linux Mint asennus kaatuu heti alkuun

      Tulee kernel panic BIOS-tekstin jälkeen. Yritän ensimmäistä kertaa asentaa Linux Minttiä vanhalle Windows 10 -läppärill
      Apua aloittelijalle
      10
      2140
    Aihe