Permalänk
Medlem

Bokning/reservations system

Hejsan!

Tänkte försöka bygga mitt egna bokning/reservations system.

http://jblan.se/karta.php vill att det ska se ut som något liknande när jag är klar.

Man ska alltså kunna välja vart man vill sitta, om dom är lediga vill säga, annars ska dom inte finnas med i listan att välja mellan.

Men jag behöver en knuff på vägen på hur det ska se ut.

Har kommit en liten bit, men den vägrar visa mig dom lediga platserna.

Koden för att visa platserna

<?php include "conn.php"; $query = "SELECT * FROM platser"; $result = mysql_query($query) or die(mysql_error()); $mysql = "SELECT * FROM bokningar"; $or = mysql_query($mysql) or die(mysql_error()); while($row = mysql_fetch_assoc($result)){ while($r = mysql_fetch_assoc($or)) { //dom bokade if($row['status'] == "1"){ echo "<img src='http://www.bilddump.se/bilder/20120606190757-83.185.113.36.jp...' title='bokad av ".$r['namn']."'></img> <br> "; } //dom lediga if($row['status'] == "0"){ echo "<img src='http://www.bilddump.se/bilder/20120606190720-83.185.113.36.jp...' title='ledig'></img> <br> "; } } } ?>

MVH
Jesper

Permalänk
Medlem

om vi utgår från att du i din tabell för bokningar har med vilken plats som är bokad, så kan du göra en left join för att få med namn (om det finns) och dessutom bara göra en SQL-fråga.

något i stil med detta kanske:

<?php include "conn.php"; // byt platsId till vad det nu heter i dina tabeller $query = "SELECT p.status, b.namn FROM platser AS p LEFT JOIN bokningar AS b ON b.platsId = p.platsId"; $result = mysql_query($query) or die(mysql_error()); while ($row = mysql_fetch_assoc($result)) { //dom bokade if ($row['status'] == "1") { echo "<img src='http://www.bilddump.se/bilder/20120606190757-83.185.113.36.jp...' title='bokad av ".$row['namn']."'></img> <br> "; } else { echo "<img src='http://www.bilddump.se/bilder/20120606190720-83.185.113.36.jp...' title='ledig'></img> <br> "; } } ?>

Visa signatur

as far as we can tell, the massacre went well...

Permalänk
Medlem

Fungerade på sättovis, den hämtade inte namnet platsen var bokad av.

Permalänk
Medlem

så det funkade med bokat/ledigt, men du fick inte med namnet?
hur ser tabellerna ut?

Visa signatur

as far as we can tell, the massacre went well...

Permalänk
Medlem

Ja, bokat/ledigt fungerade. Namnen fick jag inte med.

Bokningar:
Plats, Namn, Email

Platser:
ID, plats, status

Permalänk
Medlem

refererar bokningar.plats till platser.ID eller platser.plats ? det gör ju lite skillnad för resultatet.
ser det rätt ut om du kör frågan direkt i phpMyAdmin el.dyl

Visa signatur

as far as we can tell, the massacre went well...

Permalänk
Medlem

SELECT p.status, b.namn FROM platser AS p LEFT JOIN bokningar AS b ON b.plats = p.id

ändrade om så frågan såg ut sådär nu.

kör jag frågan som den ser ut direkt i phpmyadmin så får jag NULL på namn.

Permalänk
Medlem

du ska få NULL för de namn där den inte kan matcha p.id mot någon b.plats.

exempel:

Platser +----+--------+ | id | status | +----+--------+ | 1 | 0 | | 2 | 1 | | 3 | 1 | | 4 | 0 | +----+--------+ Bokningar +-------+--------+ | plats | namn | +-------+--------+ | 2 | Test1 | | 3 | Test2 | +-------+--------+ Borde generera följande svar. +--------+-------+ | status | namn | +--------+-------+ | 0 | NULL | | 1 | Test1 | | 1 | Test2 | | 0 | NULL | +--------+-------+

Man kanske borde ha med p.id i frågan också iofs...

Visa signatur

as far as we can tell, the massacre went well...

Permalänk
Medlem

Lyckades fixa alltihopa!

Tack så mycket för hjälpen!