Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Ajax+PHP /Drop Down Menu

latenleffahylly [07.03.2012 04:37:38]

#

Hei jälleen,

Minulla on web-sivujeni etusivulla tyypillinen Drop Down Menu.

---SEIKKAILU--
---SCI-FI---
---TRILLERI---

<form>
        <select name="users" onchange="showUser(this.value)">
                <option value="Seikkailu" selected="selected">SEIKKAILU</option>
                <option value="Sci-fi">SCI-FI</option>
                <option value="Trilleri">TRILLERI</option>
        </select>
</form>

- ennalta valittuna genre Seikkailu
- Kun valitsee listalta genren, tehdään Ajax-tietokanta-haku

------------------------------------------------------------------

Ongelma?

..kun käyttäjä klikkaa etusivulle on näkymä tyhjä. Vasta kun hän valitsee genren suoritetaan scripti. (YLEISESTI: Onload -arvolla toteutetaan scripti kun sivu latautuu), mutta miten ihmeessä koodataan niin, että sivun LATAUTUESSA haetaan AUTOMAATTISESTI ensimmäinen, ennalta valittu genre?

- Onloadia ei voi laittaa selectin sisään
- Pitäisi tehdä 2 tapahtumaa A.) kun käyttäjä klikkaa halutun genren B.) Kun sivu latautuu haetaan 1. genre nimeltä Seikkailu


------------------------------------------------------------------

Olen täysin jumissa ja siksi kysyn asiaa. Kumma kyllä en löydä tähän vastausta/tutoriaalia netistä.. Onload -tapahtuma lienee kuitenkin oikea suunta, vai kuinka..

samip [07.03.2012 07:09:41]

#

http://lmgtfy.com/?q=javascript on page load

ZeroGravity [07.03.2012 12:29:41]

#

Tuota, kysynpä itse... miten ja millä serveripää on toteutettu? Ilmeisesti jollakin dynaamisella tavalla eikä staattisesti, kun tehdään Ajax tietokantahaku. Laita sinne serveripään hakijaan, että hakee defaulttisivulle default genren. Vai mitenköhän tuo sinun sivu on toteutettu? Eli itse en triggeröisi mitään asiakaspäässä vaan "tyhjällä" haulla hakisin jonkun default arvon db-arvot.

$hae = @$_GET['hae'];
if(isset($hae)) $hae = 'seikkailu';
...

jotain tuonnepäin... tietenkin vähän riippuen miten kaikki on toteutettu.

latenleffahylly [07.03.2012 16:25:52]

#

Tuota, tuota..

Olen toteuttanut web-sivuni WordPressillä ja lisännyt siihen omaa koodia: HTML,CSS,JavaScript,jQuery,PHP,Ajax,SQL-lauseet,MySQL-tietokanta jne.

------------------------------------------------------------------

Eli voinko lisätä PHP:tä tuon listan sisään jotenkin..? Tarkoitus siis näyttää genre Seikkailu joka kerta kun käyttäjä klikkaa etusivulle. Samalla tulisi tietenkin olla mahdollisuus hakea muita genrejä haluttaessa. Ongelmani on että en tiedä mitä etsiä Googlesta, miten ratkaista tämä tehtävä.

Synomi [07.03.2012 16:46:53]

#

No ajax haussahan haet sisällön varmaankin johonkin yhteen div-elementtiin. Jos sinulla on mahdollisuus lisätä suoraa PHP koodia sivulle, niin voit lisätä PHP koodia tämän div-elementin sisälle, johon normaalisti ladataan sisältö kun Drop Down Menu:n sisältö vaihtuu.
Eli lisää sinne sen valinnan sisältö minkä haluat ladata kun sivulle tullaan. Esim:

<div id='ajaxsisalto'>
<?php
//hae seikkailut sisältö  sivun ladatessa sieltä mistä se ajaxillakin haetaan
//includella tai file_get_contentsilla varmaankin hyvä se hakea
//voit includessa käyttää myös $_GET jos käytät sitä ajax sisällössä (ei välttämättä kovin hyvä tapa)
//eli
$_GET['tyyppi']='Seikkailu';
include "sisalto/palauta.php";
?>
</div>

Toine vaihtoehto on tehdä sivun latauksessa heti se ajax kysely.
eli laittaa bodyn 'onload' tapahtumaan:

<body onload="showUser('Seikkailu')">

Jos et pääse body-elementtiin käsiksi, niin voit myös laittaa sivun loppuun javascriptillä:

<script type='text/javascript'>
showUser('Seikkailu');
</script>

latenleffahylly [07.03.2012 18:07:19]

#

No voi herran isä sentään...

Olen yrittänyt ratkoa tätä mitä ihmeellisimpien ratkaisujen ja koodi yhdistelmien avulla. Tutoriaaleja ja ohjeita lukenut läpi yön.. ja sitten.. ihme tapahtui?

-----------------------------------------

1. esimerkki antaa virheilmoituksen
2. body kateissa
3. Scriptin pätkä Footeriin ja -> täydellinen toimivuus 5 yleisemmällä selaimella.

..mikä helpotus. Onneksi on Ohjelmointiputkan kaltaisia paikkoja olemassa sekä kaiken ratkaissut Synomi, kiitos. Tuntuu uskomattomalta, että lopullinen ratkaisu oli -> näytä käyttäjälle Seikkailu (loogisesti ajateltuna homma tuntuu ihan järkevältä).

Nyt aina kun käyttäjä klikkaa web-sivujeni etusivulle näytetään hänelle genren Seikkailu kaikki elokuvat. Listasta hän voi sitten valita mieleisensä genren, jolloin Ajax haualla haetaan salaman nopeasti valitun genren elokuvat käyttäjän eteen kuvakkeina:

- Kuvake
- Elokuvan nimi
- Arvostele elokuva
- Tilannetieto (hyllyssä,lainassa,tulossa)
- Klikkaa kuvaketta, nimeä -> elokuvan oma sivu aukeaa, josta leffan voi varata


..huh kiitos vielä kaikille ja myös moderaattoreille hienosta työstä.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta