webForumDet fria alternativet

Loopa ut trots tomt värde i db?!

PHPur PHP

7 svar · 311 visningar · startad av ironhead

Medlem sedan mars 20011 346 inlägg
Frågan#1

Har 2 tabeller i en mySQL-db

companies
-------------
company
id

banner
---------
banner
companyid

$query = "SELECT * FROM companies INNER JOIN banner ON companies.id = banner.companyid WHERE id=".$_GET["id"];

Jag vill lista ut företagsnamnet och en eventuell banner om det finns det i tabellen...finns det ingen banner skall bara företagsnamnet visas.

Men som det ser ut nu, så om det inte finns nån banner, visas inte heller företagsnamnet...hur löser man det?

Medlem sedan mars 20011 346 inlägg
#2

Gjorde en tråkig lösning med två loopar....en för företagen, och en för banners...men det måste finnas en bättre lösning!

Hur gör man när man har en himla massa joinar & tabeller och plötsligt så är ett fält tomt i databasen....vad gör man då?!

Medlem sedan jan. 2000372 inlägg
#3

Använd LEFT JOIN?

Medlem sedan juni 200032 967 inlägg
#4

Snarare OUTER JOIN...

Medlem sedan mars 20032 667 inlägg
#5

Liknande problem är löst här:
http://www.webforum.nu/showthread.php?s=&threadid=69700

Medlem sedan mars 20011 346 inlägg
#6

*pust* svettigt! :)
Finns det ingen mySQL join-fixare med klass :OO

btw Tackar!

Medlem sedan juni 200032 967 inlägg
#7

Fick du ihop det? Vore kul att se resultatet i så fall.

Mvh

Medlem sedan mars 20011 346 inlägg
#8

Gjorde såhär:

$query = "SELECT companies.id,companies.company,banner.banner FROM companies LEFT JOIN banner ON companies.id = banner.companyid WHERE companies.id=".$_GET["id"];

Det va inte så himla svårt....när man får hjälp :birp

133 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)