abonnement Unibet Coolblue Bitvavo
  donderdag 26 juli 2007 @ 15:52:00 #181
84926 WyriHaximus
Release the hounds smithers!
pi_51857104
quote:
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 niveau Dat kan allemaal veel handiger volgens mij...
* WyriHaximus pakt de kruip olie alvast

Anyway vertel . Wat snap je niet?
phluphy for president!
pi_51857117
quote:
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 niveau Dat kan allemaal veel handiger volgens mij...
http://www.w3schools.com/sql/sql_join.asp
  donderdag 26 juli 2007 @ 16:03:51 #183
71919 wonderer
Hung like a My Little Pony
pi_51857456
quote:
Op donderdag 26 juli 2007 15:52 schreef WyriHaximus het volgende:

[..]

* WyriHaximus pakt de kruip olie alvast

Anyway vertel . Wat snap je niet?
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.
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
  donderdag 26 juli 2007 @ 16:07:00 #184
84926 WyriHaximus
Release the hounds smithers!
pi_51857554
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.
In feite can kan oneindig aantal tabellen met left join koppelen .
phluphy for president!
  donderdag 26 juli 2007 @ 16:07:39 #185
71919 wonderer
Hung like a My Little Pony
pi_51857570
quote:
Hm.

Dus iets als
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
  $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);
?>


zou met een join kunnen? Met een query tegelijk alle noodzakelijke dingen uit meerdere tabellen halen?
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
  donderdag 26 juli 2007 @ 16:08:20 #186
84926 WyriHaximus
Release the hounds smithers!
pi_51857598
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?
Ja.
phluphy for president!
  donderdag 26 juli 2007 @ 16:11:52 #187
62215 qu63
..de tijd drinkt..
pi_51857701
quote:
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
hmz, pagina begint met wat php-errors

verder ziet het wel ok uit
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_51857748
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'
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_51857760
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.
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.
  donderdag 26 juli 2007 @ 16:13:57 #190
84926 WyriHaximus
Release the hounds smithers!
pi_51857767
quote:
Op donderdag 26 juli 2007 16:11 schreef qu63 het volgende:

[..]

hmz, pagina begint met wat php-errors

verder ziet het wel ok uit
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

Thanks !
phluphy for president!
  donderdag 26 juli 2007 @ 16:14:13 #191
71919 wonderer
Hung like a My Little Pony
pi_51857773
quote:
Op donderdag 26 juli 2007 16:08 schreef WyriHaximus het volgende:

[..]

Ja.
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"]?
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
  donderdag 26 juli 2007 @ 16:16:25 #192
71919 wonderer
Hung like a My Little Pony
pi_51857831
quote:
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'
Ik wil in zoverre meer dan standaard dat geen enkel bestaand pakket alles heeft Maar dat heeft vooral met de omgeving te maken. Ik heb mijn eigen PB-system, eigen profielen enzo, en dat zit er tegenwoordig allemaal bij, dat hoeft niet.

Maar het gaat best zo en het is leuk om te doen, en ik leer ook steeds wat nieuws.
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
  donderdag 26 juli 2007 @ 16:17:41 #193
71919 wonderer
Hung like a My Little Pony
pi_51857869
quote:
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.
Oh damn. Volgens mij moet ik echt alles wat ik tot nu toe heb omgooien

Het grote nadeel van autodidact zijn, er is niemand die je vertelt dat het ook anders kan
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
pi_51857899
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"]?
Jep, alles wordt in een array gestopt. :)

Mocht je een array door willen kammen:

1
2
3
<?php
print_r
($array);
?>
  donderdag 26 juli 2007 @ 16:19:37 #195
84926 WyriHaximus
Release the hounds smithers!
pi_51857934
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"]?
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 .
phluphy for president!
pi_51858007
Hebbes, één van de betere tutorials over joins:

http://www.wellho.net/mou(...)-and-OUTER-JOIN.html
  donderdag 26 juli 2007 @ 16:22:21 #197
71919 wonderer
Hung like a My Little Pony
pi_51858015
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 .
dus users.* werkt niet?
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
  donderdag 26 juli 2007 @ 16:22:29 #198
62215 qu63
..de tijd drinkt..
pi_51858021
quote:
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
dat vond ik ook al ja
quote:
Thanks !
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  donderdag 26 juli 2007 @ 16:24:25 #199
84926 WyriHaximus
Release the hounds smithers!
pi_51858069
quote:
Op donderdag 26 juli 2007 16:22 schreef qu63 het volgende:

[..]

dat vond ik ook al ja
Word aan gewerkt .
quote:
Op donderdag 26 juli 2007 16:22 schreef qu63 het volgende:
[..]

quote:
Op donderdag 26 juli 2007 16:22 schreef wonderer het volgende:

[..]

dus users.* werkt niet?
Jawel maar als je 2 keer de zelfde ga je errors krijgen .
phluphy for president!
pi_51858282
wonderer, dump eens een lap code waarvan je denkt dat het korter kan.
  donderdag 26 juli 2007 @ 16:36:53 #201
62215 qu63
..de tijd drinkt..
pi_51858424
hmz, http://www.w3schools.com/php/php_sessions.asp helpt me wel een beetje verder, maar hoe zorg ik er voor dat ik dezelfde gegevens ook op andere pagina's kan gebruiken?
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  donderdag 26 juli 2007 @ 16:37:33 #202
71919 wonderer
Hung like a My Little Pony
pi_51858441
quote:
Op donderdag 26 juli 2007 16:31 schreef Geqxon het volgende:
wonderer, dump eens een lap code waarvan je denkt dat het korter kan. :)
You asked for it... :')
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
<?php
function profile_form($user,$element)
{
 global 
$days$months;

 
$d=connectDB();
 
$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);

 
$bd=explode("-",$row2["birthday"]);
 
$day=$bd[2];
 
$month=$bd[1];
 
$year=$bd[0];

 
$days=select_list('profileform[user_day]',$day,$days);
 
$months=select_list('profileform[user_month]',$month,$months);

 if(
$row2["user_sex"]=="f"){$sf='checked';}
 elseif(
$row2["user_sex"]=="m"){$sm='checked';}
 elseif(
$row2["user_sex"]=="t"){$st='checked';}

 if(
$row3["email_public"]=='1'){
  
$pb=' checked';
 }
 else{
  
$pv=' checked';
 }

 if(
$row3["smilies"]=='1'){
  
$sb=' checked';
 }
 else{
  
$sv=' checked';
 }

 
$res=runquery("SELECT * FROM user_avatars WHERE username=".quote_smart($user,$d),$d);
 while(
$av=mysql_fetch_array($res)){
  
$ava=$av["avatar_ID"].'.'.$av["extension"];
  if(
$av["avatar_ID"]==$row2["user_avatar"]){
    
$checked=' selected';
  }
  else{
    
$checked='';
  }
  
$select .= '<option value="'.$ava.'"'.$checked.'>'.$ava.'</option>';
 }

 if(
mysql_num_rows(runquery("SELECT * FROM user_inventory WHERE item_ID='3' AND username=".quote_smart($user,$d),$d))=='1'){
  
$fe_custom_color='<select name="profileform[custom_color]" id="kleur" style="background-color:#000000;color:#ffeeee;">'.generate_colors($row5["custom_color"]).'</select> Eigen kleurtje <br />';
 }
 else{
  
$fe_custom_color='Eigen kleurtje: <span style="color:#'.$row5["custom_color"].'">'.$row5["custom_color"].' (<a href="shop.php">aanpassen</a>)</span><br />';
 }
 if(
mysql_num_rows(runquery("SELECT * FROM user_inventory WHERE item_ID='4' AND username=".quote_smart($user,$d),$d))=='1'){
  
$fe_custom_tag='<input type="text" class="text" name="profileform[custom_tag]"> Eigen tag <br />';
 }
 else{
  
$fe_custom_tag='Eigen tag: '.$row5["custom_tag"].' (<a href="shop.php">aanpassen</a>)<br />';
 }
 if(
mysql_num_rows(runquery("SELECT * FROM user_inventory WHERE item_ID='7' AND username=".quote_smart($user,$d),$d))=='1'){
  
$fe_custom_sig='In je handtekening mogen plaatjes van maximaal 400 pixels breed en 60 pixels hoog. Het totaal aantal tekens mag de 250 niet overschrijden, inclusief BBCode. Op de inhoud zijn de algemene voorwaarden van toepassing. <br />';
  
$fe_custom_sig.='<textarea name="profileform[custom_sig]" style="width:285px;height:60px;" class="sig">'.stripslashes($row5["custom_sig"]).'</textarea>';
 }
 else{
  
$fe_custom_sig='Je hebt geen handtekening. Ga naar de <a href="shop.php">shop</a> om deze mogelijkheid te benutten.<br />';
 }
 if(
mysql_num_rows(runquery("SELECT * FROM user_inventory WHERE item_ID='6' AND username=".quote_smart($user,$d),$d))=='1'){
  
$change_name='1';
 }

 if(
$row2["user_alias"]==$user || $row2["user_alias"]==''){
  
$fe_alias='<input type="text" class="text" name="profileform[user_alias]" value="'.$user.'"> Chatnaam <br />';
 }
 elseif(
$change_name=='1'){
  
$fe_alias='<input type="text" class="text" name="profileform[user_alias]" value="'.$row2["user_alias"].'"> Chatnaam <br />';
 }
 else{
  
$fe_alias=format_username($user).' (Chatnaam <a href="">veranderen</a>)<br />';
 }


 
$fe_avatar='<select class="actielijst" name="profileform[user_avatar]"><option value="">Geen avatar</option> '.$select.'</select> <a href="members.php?c=avatars">Upload nieuwe avatar</a><br />';

 
$fe_color='<select name="profileform[user_color]" id="kleur" style="background-color:#000000;color:#ffeeee;">'.generate_colors($row2["user_color"]).'</select> Chatkleur <br />';

 
$fe_bio='Vertel hier iets over jezelf. Geen chatlogs, geen ASCII geknutsel, geen verhalen, gedichten, songteksten etc.<br />';
 
$fe_bio.=show_toolbar('user_bio');
 
$fe_bio.='<textarea id="user_bio" class="user_bio" name="profileform[user_bio]">'.stripslashes($row1["user_bio"]).'</textarea>';
 
$fe_bio.='<script>write_toolbar('user_bio');</script>';

 
$fe_homepage='<input type="text" class="text" name="profileform[user_page]" value="'.$row1["user_page"].'"> URL van je homepage <br />';
 
$fe_msn='<input type="text" class="text" name="profileform[user_msn]" value="'.$row1["user_msn"].'"> Je MSN-adres <br />';
 
$fe_wp='<input type="text" class="text" name="profileform[user_whatpulse]" value="'.$row1["user_whatpulse"].'"> Whatpulse username <br />';
 
$fe_email='<input type="text" class="text" name="profileform[email]" value="'.$row4["email"].'"> E-mailadres<br />';

 
$fe_first_name='<input type="text" class="text" name="profileform[first_name]" value="'.$row2["first_name"].'"> Voornaam<br />';
 
$fe_last_name='<input type="text" class="text" name="profileform[last_name]" value="'.$row2["last_name"].'"> Achternaam<br />';
 
$fe_location='<input type="text" class="text" name="profileform[location]" value="'.$row2["location"].'"> Woonplaats<br />';
 
$fe_country='<input type="text" class="text" name="profileform[country]" value="'.$row2["country"].'"> Land<br />';

 
$fe_birthday=$days.' - '.$months.' - <input type="text" class="text" size="4" maxlength="4" name=profileform[user_year]" value="'.$year.'"><br />';
 
$fe_sex='<input type="radio" name="profileform[user_sex]" value="m" '.$sm.'> Jongen <input type="radio" name="profileform[user_sex]" value="f" '.$sf.'> Meisje<br /><input type="radio" name="profileform[user_sex]" value="t" '.$st.' style="display:none;">';

 
$fe_prefs='
 <table class="prefs">
 <tr><td>Email-adres</td> <td><input type="radio" value="1" name="profileform[email_public]"'
.$pb.'> Openbaar</td> <td><input type="radio" value="0" name="profileform[email_public]"'.$pv.'> Priv&eacute;</td></tr>
 <tr><td>Smilies</td> <td><input type="radio" value="1" name="profileform[smilies]"'
.$sb.'> Aan</td> <td><input type="radio" value="0" name="profileform[smilies]"'.$sv.'> Uit</td></tr>
 </table>'
;


 
$formheader='<form class="profile_form" method="post" action="?c=submit_profile">';
 
$submit='<input type="hidden" name="profileform[username]" value="'.$user.'"><input type="submit" class="submit" name="submit_profile" value="opslaan" accesskey="s">';
 
$formfooter='</form>';

 
$link='<a href="?c=profile&user='.$user.'">Bekijk je profiel</a>';

 switch(
$element){
  case 
'1'#bio
   
$form=$formheader.$fe_bio.$submit.$formfooter;
   break;
  case 
'2'#contact
   
$form=$formheader.$fe_homepage.$fe_msn.$fe_wp.$fe_email.$submit.$formfooter;
   break;
  case 
'3'#persoonlijk
   
$form=$formheader.$fe_first_name.$fe_last_name.$fe_location.$fe_country.$submit.$formfooter;
   break;
  case 
'4'#geb. datum/sexe
   
$form=$formheader.$fe_birthday.$fe_sex.$submit.$formfooter;
   break;
  case 
'5'#chatstuff
   
$form=$formheader.$fe_alias.$fe_avatar.$fe_color.$submit.$formfooter;
   break;
  default:
   
$form=$formheader.'<div class="prof_left">
   <fieldset class="prof"><legend>Contactgegevens</legend>'
.$fe_homepage.$fe_msn.$fe_wp.$fe_email.'</fieldset>
   <fieldset class="prof"><legend>Persoonlijk</legend>'
.$fe_first_name.$fe_last_name.$fe_location.$fe_country.$fe_birthday.$fe_sex.'</fieldset>
   <fieldset class="prof"><legend>Chatstuff</legend>'
.$fe_alias.$fe_avatar.$fe_color.'</fieldset>
   <fieldset class="prof"><legend>Instellingen</legend>'
.$fe_prefs.'</fieldset>
   <fieldset class="prof"><legend>Extra'
s</legend>'.$fe_custom_tag.$fe_custom_color.$fe_custom_sig.'</fieldset>
   
'.$submit.'</div>
   <
div class="prof_right"><fieldset class="prof"><legend>Biografie</legend>'.$fe_bio.'</fieldset></div>'.$formfooter;
   break;
 }
return $form;
}
?>


Dat bouwt het formulier op voor een gebruikersprofiel. De switch is voor stukjes formulier: als je op je eigen profiel zit, zie je per gedeelte (persoonlijke info, biografie etc een linkje "bewerk" dat in een popupje het betreffende stukje form laat zien zodat je het makkelijk en snel kan aanpassen).

Ik heb alle userdata in verschillende tabellen gestopt vanwege het overzicht. Dit leek me makkelijker dan een grote tabel met wel 50 fields. Als ik nu bijvoorbeeld alleen een voornaam nodig heb, hoef ik niet in een hele grote tabel te gaan zoeken (hoewel, met een SELECT first_name zou dat ook niet veel uitmaken? Is het misschien toch slimmer om alles in een tabel te proppen?).
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
  donderdag 26 juli 2007 @ 16:38:40 #203
71919 wonderer
Hung like a My Little Pony
pi_51858473
Dit voelt echt net als iemand een verhaal laten lezen Ben echt bang dat er zometeen iemand komt die me keihard uitlacht omdat de code zo knullig is

Met dat verschil dat ik weet dat ik goed verhalen kan schrijven, maar dat mijn codeer-niveau nog in groep drie zit
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
  donderdag 26 juli 2007 @ 16:40:51 #204
71919 wonderer
Hung like a My Little Pony
pi_51858525
Deze is ook wel leuk trouwens:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
function breadcrumb($id){
 
$d=connectDB();
 
$r1=runquery("SELECT forum_subject, parent_ID FROM forum WHERE ID='".$id."'",$d);
 
$pid=mysql_result($r1,0,"parent_ID");
 
$topic=mysql_result($r1,0,"forum_subject");
 
$r2=runquery("SELECT forum_subject, parent_ID FROM forum WHERE ID='".$pid."'",$d);
 
$pid2=mysql_result($r2,0,"parent_ID");
 
$subforum=mysql_result($r2,0,"forum_subject");
 
$r3=runquery("SELECT forum_subject FROM forum WHERE ID='".$pid2."'",$d);
 
$forum=mysql_result($r3,0,"forum_subject");

 
$crumb='<a href="forum.php">Griezelforum</a> > '.$forum.': <a href="forum.php?c=forum&id='.$pid.'">'.$subforum.'</a> > '.stripslashes($topic);

 return 
$crumb;
}
?>

Breadcrumb voor forum->subforum->topic
"Pain is my friend. I can trust pain. I can trust pain to make my life utterly miserable."
"My brain is too smart for me."
"We don't need no education." "Yes you do, you just used a double negative."
  donderdag 26 juli 2007 @ 16:43:56 #205
84926 WyriHaximus
Release the hounds smithers!
pi_51858605
quote:
Op donderdag 26 juli 2007 16:38 schreef wonderer het volgende:
Dit voelt echt net als iemand een verhaal laten lezen Ben echt bang dat er zometeen iemand komt die me keihard uitlacht omdat de code zo knullig is

Met dat verschil dat ik weet dat ik goed verhalen kan schrijven, maar dat mijn codeer-niveau nog in groep drie zit
Dat blijf je altijd houden . Maar de meeste hier zullen best willen helpen .
phluphy for president!
  donderdag 26 juli 2007 @ 16:48:02 #206
62215 qu63
..de tijd drinkt..
pi_51858719
quote:
Op donderdag 26 juli 2007 16:36 schreef qu63 het volgende:
hmz, http://www.w3schools.com/php/php_sessions.asp helpt me wel een beetje verder, maar hoe zorg ik er voor dat ik dezelfde gegevens ook op andere pagina's kan gebruiken?
opgelöst!
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_51858764
quote:
Op donderdag 26 juli 2007 16:36 schreef qu63 het volgende:
hmz, http://www.w3schools.com/php/php_sessions.asp helpt me wel een beetje verder, maar hoe zorg ik er voor dat ik dezelfde gegevens ook op andere pagina's kan gebruiken?
Pagina 1:
1
2
3
4
5
<?php
session_start
();

$_SESSION["Voornaam"] = "Dieter";
?>


Pagina 2:
1
2
3
4
5
6
<?php
session_start
();

echo
$_SESSION["Voornaam"];
// Dieter
?>
pi_51860668
quote:
Op donderdag 26 juli 2007 16:40 schreef wonderer het volgende:
Deze is ook wel leuk trouwens:
[ code verwijderd ]

Breadcrumb voor forum->subforum->topic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
function breadcrumb($id){
    
$d connectDB();

    
$result runquery("SELECT forum_subject, parent_ID FROM forum WHERE ID = '" mysql_real_escape_string($id) . "'");
    
$topic mysql_fetch_assoc($result);
    
    
$result runquery("SELECT forum_ID, forum_subject, parent_ID FROM forum WHERE ID = '" $topic['parent_ID'] . "'");
    
$subforum mysql_fetch_assoc($result);
    
    
$result runquery("SELECT forum_subject FROM forum WHERE ID = '" $subforum['parent_ID'] . "'");
    
$forum mysql_fetch_assoc($result);
    
    
$breadcrumb_html '<a href="forum.php">Griezelforum</a> &raquo; ' $forum['forum_subject'] . ': ';
    
$breadcrumb_html .= '<a href="forum.php?c=forum&id='.$subforum['forum_ID'].'">'.$subforum['forum_subject'].'</a> &raquo; ';
    
$breadcrumb_html .= stripslashes($topic['forum_subject']);
    
    return 
$breadcrumb_html;
}
?>


Qua structuur iets overzichtelijker gemaakt. Je hebt nu drie arrays, een array met alle data van het topic, een array met alle data van het subforum, en een array met alle data van het forum zelf. En daar bouw je dan vervolgens je breadcrumb mee op.

'forum_ID' heb ik zelf verzonnen, daar zul je mogelijk nog wat aan moeten doen.

En als je het een heel stuk korter wilt hebben:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
function breadcrumb($id){
    
$d connectDB();

    
$topic mysql_fetch_assoc(runquery("SELECT forum_subject, parent_ID FROM forum WHERE ID = '" mysql_real_escape_string($id) . "'",$d));
    
$subforum mysql_fetch_assoc(runquery("SELECT forum_ID, forum_subject, parent_ID FROM forum WHERE ID = '" $topic['parent_ID'] . "'",$d));
    
$forum mysql_fetch_assoc(runquery("SELECT forum_subject FROM forum WHERE ID = '" $subforum['parent_ID'] . "'",$d));
    
    
$breadcrumb_html '<a href="forum.php">Griezelforum</a> &raquo; ' $forum['forum_subject'] . ': ';
    
$breadcrumb_html .= '<a href="forum.php?c=forum&id='.$subforum['forum_ID'].'">'.$subforum['forum_subject'].'</a> &raquo; ';
    
$breadcrumb_html .= stripslashes($topic['forum_subject']);
    
    return 
$breadcrumb_html;
}
?>


Aan jou de keus wat je netter vind. :)
pi_51860729
ik vind de html opbouwen met sprintf() netter dan dit.
1
2
3
4
<?php
$format 
'<a href="forum.php">Griezelforum</a> &raquo; %s <a href="forum.php?c=forum&id=%s">&s</a> &raquo; %s';
$breakcrumb_html sprintf($format$forum['forum_subject'], $subforum['forum_ID'], $subforum['forum_subject'], stripslashes($topic['forum_subject']););
?>


[ Bericht 40% gewijzigd door super-muffin op 26-07-2007 18:16:29 ]
pi_51861081
quote:
Op donderdag 26 juli 2007 18:11 schreef super-muffin het volgende:
ik vind de html opbouwen met sprintf() netter dan dit.
[ code verwijderd ]
Dat is inderdaad een stuk netter.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')