Dan gaat de query iig goedquote:Op donderdag 26 juli 2007 14:44 schreef Qunix het volgende:
[..]
2007-07-26 14:43:15
wedfrgthuj
poiuytre4567890
1
1
0
Geplaatst
Nieuwsitem is geplaatst.
Geen foutmelding dus... Dat boven in is wat ingevoerd is.
Ja ben je ookquote:Op donderdag 26 juli 2007 14:44 schreef wonderer het volgende:
Ik wil van PHPBB eigenlijk wel meer weten hoe ze dingen doen. Ik probeer zelf een forum te scripten (als onderdeel van een hele site, netjes geintegreerd) en ik heb af en toe het idee dat ik het wiel opnieuw aan het uitvinden ben
Maar een bestaand pakket gebruiken werkt ook weer niet echt want ik wil dingen die zij niet ondersteunen (ook niet in MODs) en zelf dingen aanpassen daar is nog veel frustrerender.
Er zijn forumpakketten die bijhouden welke topics je hebt gelezen, hoe vaak je ook in- en uitlogt (dus niet zoals Fok het doet, gebaseerd op je laatste inlogtijd, maar echt of je erop geklikt hebt). Weet iemand hoe dat bijgehouden wordt? Ik kan me amper voorstellen dat er ergens in een tabel wordt bijgehouden met een n-n relatie: user-post/topic.
Iemand een idee?
Da's wel een goeie, ja!quote:Op donderdag 26 juli 2007 14:50 schreef WyriHaximus het volgende:
Ja ben je ook. Maar goed als een ander wiel niet past onder jouw auto waarom zou je het dan gebruiken
.
Ik kan het me haast niet voorstellen (zo'n grote tabelquote:Yup dat word gewoon in een tabelletje bijgehouden vaak. (Dat het ontzettend groot word is een ander verhaal.)
* ] WyriHaximus heeft de hele source van phpbb online staan, dus als je wilt, leef je uit http://wyrihaximus.net/en-files/index-d-548-n-phpBB2_0_22.html
Net verzonnenquote:
Dat gaat gewoon ook fout na een tijdje als het te groot word. Natuurlijk is een prune functie wel handigquote:Op donderdag 26 juli 2007 15:25 schreef wonderer het volgende:
[..]
Ik kan het me haast niet voorstellen (zo'n grote tabel),
PHPBB ga ik ook eens een keer bekijken, hoewel ik meer geinteresseerd ben in hoe ze het opslaan in de database.
Gedaan zonder id voorin... maar nog doet hij het niet.. Gegevens komen goed door, hij komt in het gebied waar hij het hoort uit te voeren maar alsnog doet hij het niet in de database.quote:Op donderdag 26 juli 2007 14:47 schreef Geqxon het volgende:
[..]
Ik kan je aanraden dit format te gebruiken:
[ code verwijderd ]
Als je dan ooit een veldnaam aan je tabel toevoegd, dan weet je zeker dat alles nog goed loopt.
* WyriHaximus pakt de kruip olie alvastquote:Op donderdag 26 juli 2007 15:48 schreef wonderer het volgende:
*probeert left join te snappen*
Serieus, volgens mij heb ik een redacteur nodig. Mijn SQL skills zitten al 8 jaar op hetzelfde niveauDat kan allemaal veel handiger volgens mij...
http://www.w3schools.com/sql/sql_join.aspquote:Op donderdag 26 juli 2007 15:48 schreef wonderer het volgende:
*probeert left join te snappen*
Serieus, volgens mij heb ik een redacteur nodig. Mijn SQL skills zitten al 8 jaar op hetzelfde niveauDat kan allemaal veel handiger volgens mij...
Vooral wanneer ik het moet gebruiken. De syntax is niet zo heel lastig, maar het nut. En werkt het alleen met twee verschillende tabellen?quote:Op donderdag 26 juli 2007 15:52 schreef WyriHaximus het volgende:
[..]
* WyriHaximus pakt de kruip olie alvast
Anyway vertel. Wat snap je niet?
In feite can kan oneindig aantal tabellen met left join koppelenquote:Op donderdag 26 juli 2007 16:03 schreef wonderer het volgende:
[..]
Vooral wanneer ik het moet gebruiken. De syntax is niet zo heel lastig, maar het nut. En werkt het alleen met twee verschillende tabellen?
Ik heb alle lagen forum (dus categorieen, subfora, startpost en replies) in dezelfde tabel staan en het level van elke entry geeft weer wat het is. Leek me handiger dan vier aparte tabellen met voornamelijk dezelfde velden. Zou ik daar eventueel (als ik erachter kom waar ik het voor kan gebruiken) gebruik kunnen maken van left join?
Dus eigenlijk vraag ik me af: welke situatie zal eerder om een left join vragen, dan bijvoorbeeld twee aparte queries.
Hm.quote:Op donderdag 26 juli 2007 15:52 schreef Geqxon het volgende:
[..]
http://www.w3schools.com/sql/sql_join.asp
1 2 3 4 5 6 7 8 9 10 11 12 13 | $result1=runquery("SELECT * FROM user_profile WHERE username=".quote_smart($user,$d),$d); $result2=runquery("SELECT * FROM user_data WHERE username=".quote_smart($user,$d),$d); $result3=runquery("SELECT * FROM user_prefs WHERE username=".quote_smart($user,$d),$d); $result4=runquery("SELECT * FROM users WHERE username=".quote_smart($user,$d),$d); $result5=runquery("SELECT * FROM user_extras WHERE username=".quote_smart($user,$d),$d); $row1=mysql_fetch_array($result1); $row2=mysql_fetch_array($result2); $row3=mysql_fetch_array($result3); $row4=mysql_fetch_array($result4); $row5=mysql_fetch_array($result5); ?> |
Ja.quote:Op donderdag 26 juli 2007 16:07 schreef wonderer het volgende:
[..]
Hm.
Dus iets als
[ code verwijderd ]
zou met een join kunnen? Met een query tegelijk alle noodzakelijke dingen uit meerdere tabellen halen?
hmz, pagina begint met wat php-errorsquote:Op donderdag 26 juli 2007 14:06 schreef WyriHaximus het volgende:
[..]
Kijk eens naar die van phpBB, zit redelijk netjes in elkaar. Komt zo ff link naar de source, upload is wat traag op me werk
. http://wyrihaximus.net/en(...)-n-sessions_php.html
Ik heb hier dus al enkele topics mee bevuild, maar om het dan toch een keertje op te takelen:quote:Op donderdag 26 juli 2007 16:03 schreef wonderer het volgende:
[..]
Vooral wanneer ik het moet gebruiken. De syntax is niet zo heel lastig, maar het nut. En werkt het alleen met twee verschillende tabellen?
Ik heb alle lagen forum (dus categorieen, subfora, startpost en replies) in dezelfde tabel staan en het level van elke entry geeft weer wat het is. Leek me handiger dan vier aparte tabellen met voornamelijk dezelfde velden. Zou ik daar eventueel (als ik erachter kom waar ik het voor kan gebruiken) gebruik kunnen maken van left join?
Dus eigenlijk vraag ik me af: welke situatie zal eerder om een left join vragen, dan bijvoorbeeld twee aparte queries.
Liep idd ff te kutten ja met de functie die voor de source parsing and highligthing zorgt aangezien de text van de code wat klein isquote:Op donderdag 26 juli 2007 16:11 schreef qu63 het volgende:
[..]
hmz, pagina begint met wat php-errors
verder ziet het wel ok uit
En dat kan ik dan met een enkele fetch_array ophalen? wordt het dan iets van $row["users.last_visit"] en $row["user_data.first_name"]?quote:
Ik wil in zoverre meer dan standaard dat geen enkel bestaand pakket alles heeftquote:Op donderdag 26 juli 2007 16:13 schreef Chandler het volgende:
Zo ie zo vind ik dat de meeste bulletinboards te veel mogelijkheden hebben. Een standaard forum is bijna niet meer te vinden.
Waar je simpel en alleen kunt registreren, posten enzo. Heb zelf ooit ook een forum geschreven (wie niet?) ennuh moet zeggen dat het niet echt heel moeilijk is hoor. Tenzij je meer wilt dan 'standaard'
Oh damn. Volgens mij moet ik echt alles wat ik tot nu toe heb omgooienquote:Op donderdag 26 juli 2007 16:13 schreef Geqxon het volgende:
[..]
Ik heb hier dus al enkele topics mee bevuild, maar om het dan toch een keertje op te takelen:
In het systeem dat ik aan het bouwen ben kunnen gebruikers een nieuwsartikel bookmarken. Ik plaats dan een record in de bookmark tabel met het userid en het nieuwsartikel-id.
In het nieuwsoverzicht wil ik dat de gebruikers bij elk nieuwsartikel zien of ze deze al gebookmarked hebben of niet. Nu kan ik bij elk nieuwsartikel het in de database opzoeken, maar ik maak gebruik van een left join. Als bij het nieuwsartikel-ID een bookmark is geplaatst (en dat dus in de bookmarktabel staat), dan komt hij er keurig bij te staan, en als die er niet is, staat er NULL.
Zo kan ik bijna de complete pagina in 1 query ophalen.
Jep, alles wordt in een array gestopt. :)quote:Op donderdag 26 juli 2007 16:14 schreef wonderer het volgende:
[..]
En dat kan ik dan met een enkele fetch_array ophalen? wordt het dan iets van $row["users.last_visit"] en $row["user_data.first_name"]?
1 2 3 | print_r($array); ?> |
Ja, maar je moet wel gaan specificeren welke velden je wiltquote:Op donderdag 26 juli 2007 16:14 schreef wonderer het volgende:
[..]
En dat kan ik dan met een enkele fetch_array ophalen? wordt het dan iets van $row["users.last_visit"] en $row["user_data.first_name"]?
dus users.* werkt niet?quote:Op donderdag 26 juli 2007 16:19 schreef WyriHaximus het volgende:
[..]
Ja, maar je moet wel gaan specificeren welke velden je wilt. En je kunt ook user_data.first_name AS firstname en dan zal die firstname in je $row heten
.
dat vond ik ook al jaquote:Op donderdag 26 juli 2007 16:13 schreef WyriHaximus het volgende:
[..]
Liep idd ff te kutten ja met de functie die voor de source parsing and highligthing zorgt aangezien de text van de code wat klein is![]()
quote:Thanks!
Word aan gewerktquote:
quote:
Jawel maar als je 2 keer de zelfde ga je errors krijgenquote:
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |