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
1258
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
Veroaste on Suomessa viitisen prosenttiyksikköä liian matala
Veropohjaa on rapautettu käytännössä koko kulunut vuosituhat, jonka vuoksi valtion menoja on jouduttu rahoittamaan velka1613271EU komissio - EU-elpymisrahoja voidaan käyttää TILAPÄISESTI väärin!
Espanja ohjasi miljardeja euroja – Nyt EU-komissio teki yllättävän paljastuksen Skandaaliksi noussut Espanjan EU-rahoje403032- 1121565
Empaattisuus ja suoruus.
Tässä tullut noita pehmeitä asioita pohdittua, mutta toisaalta olen myös yksinkertainen mies. Pidän suoruudestakin. Mi1551304- 731139
Kristillinen kaste annetaa upotuskasteena
Kristillinen upotuskaste perustuu juutalaiseen mikve-kasteeseen, jossa upottaudutaan veden alle kokonaan. Paavali vertas1621097Koko kansan kaste Punaisen meren ylityksen aikana
Koko Israelin 2,5 milj.kansa sai kasteen ja Pyhän Hengen lahjan ylittäessän Punaisen meren. 1.Kor.10 1 Sillä minä en ta3661077Sijaiskasteet kuolleitten puolesta
Paavali teki Korintossa sijaiskasteita kuolletten puolesta eli ns. Mormoninkasteita. 1. Kor. 15:29 Mitä muutoin ne, j373989- 47963
Sä saat mut tuntemaan
Jotain sellaista mitä ei saisi tuntea mutta må en mahda tälle mitään. Mulla on ikävä niitä meidän katseita ja sitä tunne24938