Oproepen uit database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3 volgende »

Roy

Roy

17/11/2007 17:57:00
Quote Anchor link
Ik heb hierboven 2 scripts gepost, kieseenclub en profiel.

Bij kies een club kan je een club kiezen, waneer je bijvoorbeeld ajax kiest, zal ik graag willen dat er dan in je profiel komt te staan: Spelers: en dan alle spelers van ajax.

Maar waneer je een andere club hebt, dat er dan alle spelers van die club komen.

Ps: Met het script hierboven (kieseenclub) heeft een kennis gemaakt, dat als je een team kiest, dat er dan in je profiel komt te staan welk team je hebt, (Dit boeit jullie denk ik niks, maar is ff dat jullie begrijpen wat daar gescript is.)
 
PHP hulp

PHP hulp

26/01/2025 05:25:54
 
Joren de Wit

Joren de Wit

17/11/2007 20:13:00
Quote Anchor link
Goed, maar wat is er dan mis met de queries die Frank en ik geven? Heb je het al geprobeerd? Dat zijn namelijk die queries die je gebruikt om alle spelers te selecteren die als club 'ajax' hebben.

Waarschijnlijk zit jij met het probleem dat je zelf niet weet waar je opgeslagen hebt welke gebruiker welke club gekozen heeft. Dit hoor je te doen in de tabel gebruikers. Neem dus de tabel die ik je al gaf en voeg daar het club_id aan toe.

gebruikers
------------
id
gebruikersnaam
wachtwoord
rang_id
club_id

In deze tabel komen dus allemaal records te staan van gebruikers van je website die een account aangemaakt hebben.

Om nu de spelers van de door de gebruiker gekozen club te selecteren kun je deze query gebruiken:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
SELECT s.naam
FROM
    spelers AS s,
    gebruikers AS g
WHERE
    s.club_id = g.club_id
AND
    g.id = $$

Waarbij je $$ vervangt door de variabele die het id van de huidige gebruiker aangeeft.
 
Roy

Roy

17/11/2007 21:11:00
Quote Anchor link
Maar die Gebruikers wie jij hebt, dat is het zelfde als inlog ;) Maar dan is de inlog van mij iets uitgebreider ;)
 
Joren de Wit

Joren de Wit

17/11/2007 21:14:00
Quote Anchor link
Ok, niet echt een logische naam voor een tabel, maar goed.

In de tabel inlog heb je als het goed is dan een kolom met daarin het id van de gekozen club. Bovenstaande query kun je dan gewoon gebruiken, natuurlijk iets aanpassen voor veranderde kolomnamen.
 
Frank -

Frank -

17/11/2007 21:16:00
Quote Anchor link
Roy schreef op 17.11.2007 21:11:
Maar die Gebruikers wie jij hebt, dat is het zelfde als inlog ;) Maar dan is de inlog van mij iets uitgebreider ;)
Wow! Scripten op dit niveau en dan heel triomfantelijk roepen dat jouw tabelletje wat uitgebreider is... Het is nooit de bedoeling van Blanche geweest om een kant-en-klaar script op te leveren, is dan ook wat overdreven om trots te zijn op een 'beter' script!

De naam 'inlog' is wel redelijk beroerd gekozen, er staan ook users in die niet zijn ingelogd.

Maar goed, we dwalen af.
 
Roy

Roy

17/11/2007 21:17:00
Quote Anchor link
en met variabelle bedoel je.?
 
Joren de Wit

Joren de Wit

17/11/2007 21:22:00
Quote Anchor link
Als je een profiel bekijkt van een gebruiker, moet je op een of andere manier weten om welke gebruiker het gaat. Je zult dus ergens het id (dat is het meest logische) van de gebruiker moeten hebben, bijvoorbeeld in de url, waardoor je weet welk profiel getoond moet worden.

Datzelfde id gebruik je in bovenstaande query om de spelers op te halen van de door de gebruiker gekozen club.
 
Frank -

Frank -

17/11/2007 21:22:00
Quote Anchor link
Roy schreef op 17.11.2007 21:17:
en met variabelle bedoel je.?

Zo uit de handleiding:
Quote:
Variables in PHP are represented by a dollar sign followed by the name of the variable. The variable name is case-sensitive.

Variable names follow the same rules as other labels in PHP. A valid variable name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thus: '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'

De rest kun je zelf uitvogelen.
 
Roy

Roy

17/11/2007 21:27:00
Quote Anchor link
Dus bijvoorbeeld 1 Of 2 Ofzo? ;)
 
Joren de Wit

Joren de Wit

17/11/2007 21:33:00
Quote Anchor link
Ja, maar dan variabel. Dus stel dat je de profielpagina zo aanroept:

profiel.php?user=1

Dan ziet je query er dus zo uit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$sql
= "    
    SELECT s.naam
    FROM
        spelers AS s,
        gebruikers AS g
    WHERE
        s.club_id = g.club_id
    AND
        g.id = '"
.$_GET['user']."'
    "
;
?>

Natuurlijk wel eerst even controleren of $_GET['user'] wel numeriek is.
 
Roy

Roy

17/11/2007 21:39:00
Quote Anchor link
Owkay, Als andere mensen je profiel willen zien is de link:

ledenlijst.php?ID=1

en als je zelf gewoon wilt zien blijft het gewoon profiel.php..



Ps: Ik wil Jou nog ff heel erg bedanken dat je zo veel geduld hebt en mij toch helpt.
Gewijzigd op 01/01/1970 01:00:00 door Roy
 
Joren de Wit

Joren de Wit

17/11/2007 21:42:00
Quote Anchor link
Maar als de gebruiker zelf naar z'n profiel gaat, moet je nog steeds het id van die gebruiker hebben om het juiste profiel op te kunnen halen. Ik neem aan dat je dat in een sessievariabele opgeslagen hebt tijdens het inloggen?

Maar goed, het lijkt me dat je nu wel weet wat je moet doen?
 
Roy

Roy

18/11/2007 17:23:00
Quote Anchor link
euh, ik heb er mee zitten prutsen, Ik heb een speler gemaakt, en dan bij club NEC, en dan als proef NEC genomen, en hij staat er niet. :|
 
Joren de Wit

Joren de Wit

18/11/2007 19:45:00
Quote Anchor link
En nu moet ik in mijn glazen bol kijken om te zien wat er fout gaat? Oftewel, kom eens met meer informatie. Wat heb je geprobeerd? Hoe ziet je relevante (!) code er nu uit? Etc...
 
Roy

Roy

18/11/2007 20:23:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$sql
= "    
    SELECT s.naam
    FROM
        spelers AS s,
        inlog AS g
    WHERE
        s.club_id = g.Club
    AND
        g.id = '"
.$_GET['ID']."'
    "
;
?>
 
Joren de Wit

Joren de Wit

18/11/2007 20:40:00
Quote Anchor link
Ja goed, maar krijg je verder nog een foutmelding? Heb je
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
?>

boven aan je script staan?
 
Roy

Roy

18/11/2007 21:04:00
Quote Anchor link
Dankje, de volgende foutmelding heb ik gekregen:

Notice: Undefined index: ID in /home/vhosts/nicro.nl/httpdocs/typphp2/team.php on line 13

EDIT: Ik wil je nogmaals bedanken dat je zo veel geduld hebt en me helpt ;)
Gewijzigd op 01/01/1970 01:00:00 door Roy
 
Joren de Wit

Joren de Wit

18/11/2007 21:07:00
Quote Anchor link
Voila, de variabele $_GET['ID'] bestaat dus niet. Dat is waar het fout gaat...

Voordat je een variabele gebruik in je query zul je altijd moeten controleren of hij wel bestaat en of hij wel het juiste formaat heeft:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if(isset($_GET['ID']) && is_numeric($_GET['ID']))
{

    // Nu pas $_GET['ID'] in een query gebruiken
}
?>
 
Roy

Roy

18/11/2007 21:12:00
Quote Anchor link
En hoe kan ik nou weten welke variabele ik nodig heb (a)
 
Joren de Wit

Joren de Wit

18/11/2007 21:14:00
Quote Anchor link
Nou, een GET variabele komt uit de url. Als je url er zo bijvoorbeeld uitziet:

ledenlijst.php?id=1

Kun je die variabele uitlezen met $_GET['id']. Maar dan moet je natuurlijk wel zorgen dat die variabele in de url aanwezig is.
 

Pagina: « vorige 1 2 3 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.