probleem: weergeven van lijst mysql resultaat
Nu heb ik een probleem met de weergave van een lijst items.
Ik krijg de volledige lijst als resultaat.
Maar zou graag het resultaat lager in de pagina weergeven.
Maar telkens krijg ik maar 1 resultaat meer te zien.
Dat ziet er zo uit
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
29
30
31
32
33
34
35
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
<?php
//er is al verbinding gemaakt met de database
//beschikbare video' ophalen
$query = "SELECT * FROM `vid` WHERE `player`='$playername'";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result))
{
//deze geeft mij de volledige lijst
echo $row['vidname']. " - ". $row['date'].'<br>';
////////////////////////////////////////////////////////////////////
//zou graag zoiets doen en de resultaten later in de pagina weergeven
$vid= $row['vidname'];
$dat= $row['date'];
echo $vid;
echo $dat;
}
?>
//er is al verbinding gemaakt met de database
//beschikbare video' ophalen
$query = "SELECT * FROM `vid` WHERE `player`='$playername'";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result))
{
//deze geeft mij de volledige lijst
echo $row['vidname']. " - ". $row['date'].'<br>';
////////////////////////////////////////////////////////////////////
//zou graag zoiets doen en de resultaten later in de pagina weergeven
$vid= $row['vidname'];
$dat= $row['date'];
echo $vid;
echo $dat;
}
?>
had graag later in de pagina zoiets gedaan
hier zit ik telkens met 1 resultaat meer.
hoe kan je zoiets oplossen?
mijn dank bij voorbaat
- Backticks (`) horen niet thuis in SQL.
- Bouw echte foutafhandeling in. Or die is niet.
- SQL injections mogelijk zie: mysql_real_escape_string.
- Variabelen buiten quotes halen.
- Je gebruikt de assoc versie van mysql_fetch_array, dan kan je net zo goed direct assoc ophalen: mysql_fetch_assoc.
- Niet onnodig variabelen kopiëren (regel 26 en 27).
Verder moet je eens goed nadenken wat je precies doet in de while (let op het is-teken).
dus als ik nu alles terug opnieuw doe.
en de code is als dit, maar dan goed geschreven.
Ga ik dan wel all resultaten hebben op deze manier?
Waar komt: $playername vandaan?
dit is onderdeel van 2 dagen uitzoeken en proberen
het probleem begint hier:
ik moet alle aanwezige video url's ophalen van een bepaalde persoon/player uit een database
en weergeven in een lijst met link naar de betreffende video.
(de link is ook de vidname)
$query = "SELECT vidname,date FROM vid WHERE player=". $_SESSION['username']. "";
deze query geeft mij deze melding:
Unknown column 'p1' in 'where clause'
p1 is de player, niet de column in dit geval
Het lijkt dat ik hier volledig de mist in ga.
na 2 dagen uitzoeken en proberen had ik dan deze:
$query = "SELECT * FROM `vid` WHERE `player`='$playername'";
die geeft wel het resultaat.
vandaar dat ik hiermee verder ging.
Dus mijn fout zit in mijn eerste query?
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$bla = '';
while($row = mysql_fetch_assoc($result))
{
$bla .= $row['vidname']. " - ". $row['date'].'<br>';
}
echo $bla;
?>
$bla = '';
while($row = mysql_fetch_assoc($result))
{
$bla .= $row['vidname']. " - ". $row['date'].'<br>';
}
echo $bla;
?>
Gewijzigd op 15/12/2010 20:55:21 door - SanThe -
Na 2 dagen zweten staat het erop!
bedankt iedereen
Pat vc op 15/12/2010 21:00:54:
SCHOL SanThe!
Na 2 dagen zweten staat het erop!
bedankt iedereen
Na 2 dagen zweten staat het erop!
bedankt iedereen
Weet je nu ook waarom het bij jouw niet werkte en bij Santhe wel?
Karl Karl op 15/12/2010 21:02:40:
Weet je nu ook waarom het bij jouw niet werkte en bij Santhe wel?
Pat vc op 15/12/2010 21:00:54:
SCHOL SanThe!
Na 2 dagen zweten staat het erop!
bedankt iedereen
Na 2 dagen zweten staat het erop!
bedankt iedereen
Weet je nu ook waarom het bij jouw niet werkte en bij Santhe wel?
Dat ga ik nu ook verder goed bekijken ja. het is de bedoeling dat ik er ook wat vam leer.
De query begrijp ik niet nee
Dus iets als:
SELECT id FROM tabel WHERE check='data';
Code (php)
1
2
3
4
5
2
3
4
5
<?php
$query = "SELECT vidname, date
FROM vid
WHERE player = '" . $_SESSION['username']. "'";
?>
$query = "SELECT vidname, date
FROM vid
WHERE player = '" . $_SESSION['username']. "'";
?>
Denk ook aan beveiliging.
Ik ben dus na een stomme fout in de query, als een gek het bos ingerend om de ene na de andere boom te stoten!
ik ga ook de SQL injections probleem/oplossing eens bekijken en de error afhandeling
Mijn dank!
Quote:
Schol
Uit Wikipedia, de vrije encyclopedie
Schol kan verwijzen naar:
* Schol (dier) - pladijs, een ruitvormige vis
* Schar - straalvinnige vis
* Tektonische plaat - een deel van de lithosfeer
* IJsschots - groot drijvend brok ijs
Uit Wikipedia, de vrije encyclopedie
Schol kan verwijzen naar:
* Schol (dier) - pladijs, een ruitvormige vis
* Schar - straalvinnige vis
* Tektonische plaat - een deel van de lithosfeer
* IJsschots - groot drijvend brok ijs
- SanThe - op 15/12/2010 21:27:57:
Quote:
Schol
Uit Wikipedia, de vrije encyclopedie
Schol kan verwijzen naar:
* Schol (dier) - pladijs, een ruitvormige vis
* Schar - straalvinnige vis
* Tektonische plaat - een deel van de lithosfeer
* IJsschots - groot drijvend brok ijs
Uit Wikipedia, de vrije encyclopedie
Schol kan verwijzen naar:
* Schol (dier) - pladijs, een ruitvormige vis
* Schar - straalvinnige vis
* Tektonische plaat - een deel van de lithosfeer
* IJsschots - groot drijvend brok ijs
Sorry, dit is vanwege mijn Vlaamse roots.
$schol = "proost";
Santé Pat :)