Oproepen uit database
Oooooh ;) daar zit 't 'm, ik moet hem eerst wel bij ledenlijst neer zetten ;)
Het meest logische is dan dat je tijdens het inloggen het id van de huidige gebruiker opslaat in een sessievariabele (bv. $_SESSION['id']) en deze op de profiel pagina vervolgens gebruikt in de query.
echo '<td background="images/menu_02.gif" width="95%"><div id="login"><b>Team</b></div></td>';
echo '<td><img src="images/menu_03.gif"></td>';
echo '</tr>';
echo '<tr>';
echo '<td background="images/menu_04.gif" width="5"></td>';
echo '<td background="images/menu_05.gif" width="100%">';
$sql = 'SELECT * FROM badge_verdien WHERE to_ID="'.$_GET['ID'].'"';
$resultaat = mysql_query($sql) OR die (mysql_error());
$d = 'SELECT * FROM inlog WHERE ID="'.$_GET['ID'].'"';
$h = mysql_query($d) OR die (mysql_error());
$wa = mysql_fetch_assoc($h);
if($wa['rang'] == 'admin'){
echo '<img src="images/badges/admin.gif"> ';
} else if($wa['rang'] == 'VIP'){
echo '<img src="images/badges/vip.gif"> ';
} else if($wa['rang'] == 'mod'){
echo '<img src="images/badges/moderator.gif"> ';
} else if($wa['rang'] == 'nieuws'){
echo '<img src="images/badges/manager.gif"> ';
}
echo '<img src="images/badges/member.gif"> ';
while($rij = mysql_fetch_array($resultaat)){
$da = 'SELECT * FROM badge WHERE ID="'.$rij['ID'].'"';
$ad = mysql_query($da) OR die (mysql_error());
$es = mysql_fetch_assoc($ad);
echo '<img src="'.$es['url'].'" border="0"> ';
}
echo '</td>';
echo '<td background="images/menu_06.gif" width="5"></td>';
echo '</tr>';
en die ene code daar dus in doen, Maarja, het wil niet helemaal mee werken, wat moet ik weghalen, en waar moet ik dat stukje code dan neer zetten?
Sorry dat ik zo veel vraag.
Dit hele stuk kun je dus in het if-statement zetten van het stukje code dat ik op de vorige pagina gaf.
Code (php)
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
$sql = 'SELECT * FROM badge_verdien WHERE to_ID="'.$_GET['ID'].'"';
$resultaat = mysql_query($sql) OR die (mysql_error());
$d = 'SELECT * FROM inlog WHERE ID="'.$_GET['ID'].'"';
$h = mysql_query($d) OR die (mysql_error());
$wa = mysql_fetch_assoc($h);
if($wa['rang'] == 'admin'){
echo '<img src="images/badges/admin.gif"> ';
} else if($wa['rang'] == 'VIP'){
echo '<img src="images/badges/vip.gif"> ';
} else if($wa['rang'] == 'mod'){
echo '<img src="images/badges/moderator.gif"> ';
} else if($wa['rang'] == 'nieuws'){
echo '<img src="images/badges/manager.gif"> ';
}
echo '<img src="images/badges/member.gif"> ';
while($rij = mysql_fetch_array($resultaat)){
$da = 'SELECT * FROM badge WHERE ID="'.$rij['ID'].'"';
$ad = mysql_query($da) OR die (mysql_error());
$es = mysql_fetch_assoc($ad);
echo '<img src="'.$es['url'].'" border="0"> ';
}
?>
$sql = 'SELECT * FROM badge_verdien WHERE to_ID="'.$_GET['ID'].'"';
$resultaat = mysql_query($sql) OR die (mysql_error());
$d = 'SELECT * FROM inlog WHERE ID="'.$_GET['ID'].'"';
$h = mysql_query($d) OR die (mysql_error());
$wa = mysql_fetch_assoc($h);
if($wa['rang'] == 'admin'){
echo '<img src="images/badges/admin.gif"> ';
} else if($wa['rang'] == 'VIP'){
echo '<img src="images/badges/vip.gif"> ';
} else if($wa['rang'] == 'mod'){
echo '<img src="images/badges/moderator.gif"> ';
} else if($wa['rang'] == 'nieuws'){
echo '<img src="images/badges/manager.gif"> ';
}
echo '<img src="images/badges/member.gif"> ';
while($rij = mysql_fetch_array($resultaat)){
$da = 'SELECT * FROM badge WHERE ID="'.$rij['ID'].'"';
$ad = mysql_query($da) OR die (mysql_error());
$es = mysql_fetch_assoc($ad);
echo '<img src="'.$es['url'].'" border="0"> ';
}
?>
Weghalen? en dan vervangen door dat script dat jij gaf?
Maar als ik dat doe, doet de hele pagina het niet meer.
Gewijzigd op 01/01/1970 01:00:00 door Roy
Wil je dat bovenstaande code nu wel of juist niet in je script voorkomt? Ik zeg alleen dat alle queries die ik in die code zie staan, afhankelijk zijn van $_GET['ID']. Maar voordat je die variabele kunt gebruiken met je controleren of die wel bestaat (mijn stukje code).
Dat gecombineerd zou dan zoiets opleveren:
Code (php)
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
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
<?php
if(isset($_GET['ID']) && is_numeric($_GET['id']))
{
$sql = 'SELECT * FROM badge_verdien WHERE to_ID="'.$_GET['ID'].'"';
$resultaat = mysql_query($sql) OR die (mysql_error());
$d = 'SELECT * FROM inlog WHERE ID="'.$_GET['ID'].'"';
$h = mysql_query($d) OR die (mysql_error());
$wa = mysql_fetch_assoc($h);
if($wa['rang'] == 'admin'){
echo '<img src="images/badges/admin.gif"> ';
} else if($wa['rang'] == 'VIP'){
echo '<img src="images/badges/vip.gif"> ';
} else if($wa['rang'] == 'mod'){
echo '<img src="images/badges/moderator.gif"> ';
} else if($wa['rang'] == 'nieuws'){
echo '<img src="images/badges/manager.gif"> ';
}
echo '<img src="images/badges/member.gif"> ';
while($rij = mysql_fetch_array($resultaat)){
$da = 'SELECT * FROM badge WHERE ID="'.$rij['ID'].'"';
$ad = mysql_query($da) OR die (mysql_error());
$es = mysql_fetch_assoc($ad);
echo '<img src="'.$es['url'].'" border="0"> ';
}
}
?>
if(isset($_GET['ID']) && is_numeric($_GET['id']))
{
$sql = 'SELECT * FROM badge_verdien WHERE to_ID="'.$_GET['ID'].'"';
$resultaat = mysql_query($sql) OR die (mysql_error());
$d = 'SELECT * FROM inlog WHERE ID="'.$_GET['ID'].'"';
$h = mysql_query($d) OR die (mysql_error());
$wa = mysql_fetch_assoc($h);
if($wa['rang'] == 'admin'){
echo '<img src="images/badges/admin.gif"> ';
} else if($wa['rang'] == 'VIP'){
echo '<img src="images/badges/vip.gif"> ';
} else if($wa['rang'] == 'mod'){
echo '<img src="images/badges/moderator.gif"> ';
} else if($wa['rang'] == 'nieuws'){
echo '<img src="images/badges/manager.gif"> ';
}
echo '<img src="images/badges/member.gif"> ';
while($rij = mysql_fetch_array($resultaat)){
$da = 'SELECT * FROM badge WHERE ID="'.$rij['ID'].'"';
$ad = mysql_query($da) OR die (mysql_error());
$es = mysql_fetch_assoc($ad);
echo '<img src="'.$es['url'].'" border="0"> ';
}
}
?>
Verder vind ik de naamgeving van je variabelen ook zeer onduidelijk. De namen zeggen nu niets over de inhoud van die variabele...
Dus ik dacht ik verwijder:
Code (php)
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
$sql = 'SELECT * FROM badge_verdien WHERE to_ID="'.$_GET['ID'].'"';
$resultaat = mysql_query($sql) OR die (mysql_error());
$d = 'SELECT * FROM inlog WHERE ID="'.$_GET['ID'].'"';
$h = mysql_query($d) OR die (mysql_error());
$wa = mysql_fetch_assoc($h);
if($wa['rang'] == 'admin'){
echo '<img src="images/badges/admin.gif"> ';
} else if($wa['rang'] == 'VIP'){
echo '<img src="images/badges/vip.gif"> ';
} else if($wa['rang'] == 'mod'){
echo '<img src="images/badges/moderator.gif"> ';
} else if($wa['rang'] == 'nieuws'){
echo '<img src="images/badges/manager.gif"> ';
}
echo '<img src="images/badges/member.gif"> ';
while($rij = mysql_fetch_array($resultaat)){
$da = 'SELECT * FROM badge WHERE ID="'.$rij['ID'].'"';
$ad = mysql_query($da) OR die (mysql_error());
$es = mysql_fetch_assoc($ad);
echo '<img src="'.$es['url'].'" border="0"> ';
}
?>
$sql = 'SELECT * FROM badge_verdien WHERE to_ID="'.$_GET['ID'].'"';
$resultaat = mysql_query($sql) OR die (mysql_error());
$d = 'SELECT * FROM inlog WHERE ID="'.$_GET['ID'].'"';
$h = mysql_query($d) OR die (mysql_error());
$wa = mysql_fetch_assoc($h);
if($wa['rang'] == 'admin'){
echo '<img src="images/badges/admin.gif"> ';
} else if($wa['rang'] == 'VIP'){
echo '<img src="images/badges/vip.gif"> ';
} else if($wa['rang'] == 'mod'){
echo '<img src="images/badges/moderator.gif"> ';
} else if($wa['rang'] == 'nieuws'){
echo '<img src="images/badges/manager.gif"> ';
}
echo '<img src="images/badges/member.gif"> ';
while($rij = mysql_fetch_array($resultaat)){
$da = 'SELECT * FROM badge WHERE ID="'.$rij['ID'].'"';
$ad = mysql_query($da) OR die (mysql_error());
$es = mysql_fetch_assoc($ad);
echo '<img src="'.$es['url'].'" border="0"> ';
}
?>
en dat vervang ik door:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$sql = "
SELECT s.naam
FROM
spelers AS s,
inlog AS g
WHERE
s.club_id = g.Club
AND
g.id = '".$_GET['ID']."'
";
?>
$sql = "
SELECT s.naam
FROM
spelers AS s,
inlog AS g
WHERE
s.club_id = g.Club
AND
g.id = '".$_GET['ID']."'
";
?>
Maar dat werkt niet, dus was mijn vraag: Hoe moet ik nu dan die code erin zetten zodat alleen de spelers er staan en dus dat vorige stuk script er niet meer is.
Gewijzigd op 01/01/1970 01:00:00 door Roy
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
if(isset($_GET['ID']) && is_numeric($_GET['id']))
{
$sql = "
SELECT
s.naam
FROM
spelers AS s,
inlog AS g
WHERE
s.club_id = g.Club
AND
g.id = ".$_GET['ID']."
";
// Nu je query nog uitvoeren en foutafhandeling toepassen
}
?>
if(isset($_GET['ID']) && is_numeric($_GET['id']))
{
$sql = "
SELECT
s.naam
FROM
spelers AS s,
inlog AS g
WHERE
s.club_id = g.Club
AND
g.id = ".$_GET['ID']."
";
// Nu je query nog uitvoeren en foutafhandeling toepassen
}
?>
Maareuh, wat moet ik precies verwijderen, en wat voor code moet ik daar dan precies weer neerzetten?
Dus: Die badges systeem mag weg, en dan die vervangen door speler systeem.
Ik snap alleen niet precies wat je bedoeld met query foutafhandeling uitvoeren.
Query uitvoeren: gebruik mysql_query() om de query die je in $sql hebt staan ook daadwerkelijk uit te voeren.
Foutafhandeling: controleren of de query wel gelukt is. Zo niet, een fout geven met mysql_error() erin.
Standaard opzetje:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<?php
$sql = // Je query
if(!$result = mysql_query($sql))
{
trigger_error(mysql_error().'<br>In query: '.$sql);
}
else
{
// Verder met uitlezen van gegevens.
// Gebruik mysql_fetch_assoc() om de gegevens te fetchen
}
?>
$sql = // Je query
if(!$result = mysql_query($sql))
{
trigger_error(mysql_error().'<br>In query: '.$sql);
}
else
{
// Verder met uitlezen van gegevens.
// Gebruik mysql_fetch_assoc() om de gegevens te fetchen
}
?>