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
1275
Vastaukset 11
- 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
- 1251198
- 721163
Carunan hinnat
Yks proffa vauuttaa, ettei Caruna voi noin vain nostaa hintoja koska suomen laki kieltää, toinen proffa sanoo että Carun96905- 78792
- 45771
Kunnan päätie ja sen lähialueet
Arvon hyrynsalmelaiset. Tätä palstaa on näin Ukkohallan mökkiläisena ihan viihteellistä lukea. Milloin teitä ahdistaa la39733Mikä sun kaivatussa on se miksi ihastuit
ja ikävöit? Eli se jokin asia, mikä aiheutti tunteen, että tuossa on sitä jotain? Meinasitko tehdä asialle jotain vai ka34727- 67653
- 111561
Mitä luulet
Mitä luulet kaivattusi ajattelevan sonusta? Onko jotain mitä haluaisit oikaista hänelle?39536