Tämäkin varmaan pitäisi olla helppo, mutta ei minulle. Miten luon salasana ja käyttäjätunnus lomakekentät php.llä. Nämä pitäisi lisätä nettisivuille, niihin ylläpitäjä sitten kirjoittaa tunnukset ja kirjautuu muokkaamaan tietokantaa, eli lisäämään tai poistamaan tuotteita tietokannasta.
PHP:llä ei voi lomakekenttiä luoda.
Käyttäkäämme HTML:n <form>-tagia.
echo "html-koodi formia varten"; kenties?
Kuinka paljon sulla on koodia olemassa, tai siis tarkoitan onko sulla olemassa php-skripti sitä kirjautumista varten? Tosiaan sen pelkän lomakkeen saan joko tulostamalla html:llää php:n seassa tai erottamalla php:stä...
Edit. Siis php:llä itsessään ei voida luoda lomakekenttiä, vaan ne on ihan html:llää...
Arvasin, että joku sanoo, että ei php.llä voi luoda lomakekenttiä, niin ne luodaan xhtml koodilla, mutta sitten siihen lisätään php koodia, että voi kirjautua muokkaamaan sitä tietokantaa. Onko sellainen vaikeaa tehdä? Kyllä minä sen xhtml koodin osaan, mutta php...Vaikea tätä on selittää.
Okei, nyt kun tuon sanot, niin osaan vastatakkin. Ensimmäinen vaihtoehto on kurkistaa koodivinkkeihin ja jos välttämättä tahdot tehdä itse, niin se ei ole mitenkään erityisen hankalaa.
Edit. Ainoa vaan, mikä tuli mieleen on se, että jos osaat PHP:tä sen verran, että kykenet tekemään tietokantapohjaisen verkkosovelluksen, niin silloin osaisit kyllä tehdä kirjautumisohjelmankin. Toisinsanoen, mistä ajattelit hankkia tuon varsinaisen sovelluksen?
Kenttiinhän ei montaa koodiriviä tarvita:
<?PHP echo " <form action=\"kirjautuminen.php\" method=\"POST\"> <input type=\"text\" name=\"tunnus\"> <input type=\"password\" name=\"salasana\"> <input type=\"submit\"> </form> ";?>
Eli kun 'Lähetä' tai 'Submit' nappia painetaan, sivu ohjataan 'kirjautuminen.php' tiedostoon jossa oleva koodi suoritetaan.
Esim:
<?PHP if ($_POST['tunnus'] == 'tunnus' && $_POST['salasana'] == 'salasana') { session_start(); // Aloitetaan sessio $_SESSION['tunnus'] == 'tunnus'; $_SESSION['taso'] == 5; // Asettaa käyttäjätason numeron 5, joka mahdollistaa tason 5 toiminnot jos/kun sellaisia on session_write_close(); header("Location: /"); // Ohjataan käyttäjä etusivulle } ?>
EDIT: Unohtui vielä että "session_start();" joka sivun ensimmäiselle riville (Ennen html tai muuta koodia) jossa sessiota tarvitaan ja sivu on tällöin tallennettava .php muotoon
lithi kirjoitti:
Kenttiinhän ei montaa koodiriviä tarvita:
--
Kiitos tästä oli oikeasti apua! Minulla on tietokanta, sekä sivut lisää poista tuote, joihin tarvitsen tuon ns. kirjautumislomakkeen ja php koodin.Vaikka jotain osankin, en aina tajua miten näitä pitää "lähestyä". Olen kyllä joutunut kysymään apua monessakin kohtaa, mutta onneksi "aina" olen saanut apua.
Tuli vielä mieleen, että tuon pelkän kirjautumisskriptin lisäksi se sun lisää-poista-tuotteen täytyy pystyä varmistamaan istuntotunnisteilla, että käyttäjä todella on kirjautunut. Itselleni on ainakin tästä oppaasta ollut apua: http://wiki.mureakuha.com/wiki/Turvallisten_www-sovellusten_koodaus_php:llä
Aihe on jo aika vanha, joten et voi enää vastata siihen.