Tehtävä on hakea ja esittää tietokannasta ensimmäinen rivi, jossa cust = xyz. Tarvitaan painikkeet, joilla esitetään seuraava (jos on) tai edellinen (jos on). Eli selataan asiakkaan tilauksia.
Onko tähän mitään yksinkertaista ratkaisua? Onko ainoa keino lukea ensimmäisen ID muuttujaan $id ja hakea sen jälkeen ehdolla ID < $id tai ID > $id ja taas päivittää muuttuja?
PHP query ja next
11
1223
Vastaukset
- Anonyymi
Nämä PHP, MySQL, HTML, CSS ovat kaikki niin naimisissa keskenään, että sellaisen toimivan esimerkin antaminen on jo niin monivaiheinen juttu, ettei mitään kokonaisuutta voi tarjota. Ja näin ollen kysyjän tulisi tuntea melko hyvin kaikkien näiden perusteet.
PHP ja MySQL kysely esimerkki
https://www.w3schools.com/php/func_mysqli_query.asp - Anonyymi
Hae kaikki rivit jossa tarvittava cust = xyz.
Sitten katsot montako riviä kyselystä tuli vastaukseen.
Näytät ensimmäisen ja jos rivejä on enemmän, luot seuraava painikkeen.
jne. - Anonyymi
//määritetään tietokantayhteys
$servername = "jotain";
$username = "jotain";
$password = "jotain";
$dbname = "jotain";
$conn = mysqli_connect($servername, $username, $password, $dbname);
//testataan tietokantayhteyden toimivuus
if(mysqli_connect_errno()){
die("Ei yhteyttä tietokantaan!);
} else{
$conn->set_charset("utf8");
}
//haetaan tietokannasata dataa ja tehdään tarvittavia toimia
$tulos = $conn->query("SELECT * FROM table WHERE cust = ''xyz");
$tulosRivit = mysqli_num_rows($tulos);
if($tulosRivit == 1){
//luodaan vain ainoan löytyneen tiedot
} else {
//luodaan ekan löytyneen tiedot painike seuraavaa varten
}
jne- Anonyymi
korjataan typo
WHERE cust = 'xyz'");
ennen kuin joku ehtii :)
- Anonyymi
Ratkaisu:
Hae pienin ID muuttujaan $id_min.
Hae suurin ID muuttujaan $id_max.
Hae ekan ID muuttujaan $id.
Ekalla kerralla ei ole postattu mitään
if (isset($_POST['id'])) {
$_SESSION['id'] = $_POST['id'];
$id = $_POST['id'];
}
jos $id > $id_max, $id = $id_min.
jos $id < $id_min, $id = $id_max.
Näytä ensimmäinen ja painikkeet "next" ja "prev".
Next = Kutsu sama ohjelmakoodi input hidden ID 1 muuttujaan $id
Prev = Kutsu sama ohjelmakoodi input hidden ID -1 muuttujaan $id - Anonyymi
Tuo session id on liikaa, korona-aivopieru.
- Anonyymi
Näitä ilman liittymää olevia tietokanta kyselyjä voi testata tietokantaselaimilla vaikka tällä: https://sqlitebrowser.org/
- Anonyymi
KIITOS linkistä!
- Anonyymi
Tässä aiheesta poiketen; näin tulostat ruudulle verkko-osoitteet joilla olet vieraillut, kun käytössäsi on chromium pohjainen selain. No jaa edellyttää että sinulla on tuo SQLite asennettuna, taitaa nykyään olla useammassa esiasennettu järjestelmän mukana.
a=$(find $HOME/.config/chromium/Default/ -name "History")
cd $(dirname "$a")
sqlite3
.open History
SELECT url FROM urls;- Anonyymi
pitihän sen yhden rivin jäädä pois, poistut lopuksi SQLite komentokehotteesta näin
.exit
huomaa tuo piste alussa. - Anonyymi
Anonyymi kirjoitti:
pitihän sen yhden rivin jäädä pois, poistut lopuksi SQLite komentokehotteesta näin
.exit
huomaa tuo piste alussa.SQLite tietokanta voi olla vain yhteen suuntaan auki kerrallaan, jos sinulla on selain auki ei historian tulostus välttämättä onnistu ilman selaimen sulkemista.
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Räppäri kuoli vankilassa
Ei kuulemma ole tapahtunut rikosta. Sama vahinkohan kävi Epsteinille. https://www.hs.fi/suomi/art-2000011840869.html "874098Välillä kyllä tuntuu, että jaat vihjeitä
Mutta miten niistä voi olla ollenkaan varma? Ja minä saan niistä kimmokkeen luulemaan yhtä sun toista. Eli mitä ajatella242911No kyllä te luuserit voitte tehdä mitä vaan keskenänne, sitä en ymmärrä miksi pelaat,nainen
Pisteesi silmissäni, edes ystävätasolla tippui jo tuhannella, kun sain selville pelailusi, olet toisen kanssa, vaikka ol452320- 341321
- 10909
- 131885
- 6874
Masan touhut etenee
Punatiilitalon tietotoimiston mukaan Masa on saanut viimein myytyä kämppänsä ja kaavoittaa uudelle lukaalille tonttia pa12822Naisten ja miesten tasoeroista
Oletteko huomanneet, että naisissa ylemmän tason naiset ovat sinkkuja, ja miehissä alemman tason incelit? Toimivat paris124766- 11760