Gegevens uit externe database tonen

Status
Niet open voor verdere reacties.

gast0450

Gebruiker
Lid geworden
8 jul 2006
Berichten
188
Hoi Allemaal,

Ik ben bezig met een nieuwe website en daarbij zou ik graag gegevens uit een database die ik op mijn computer heb draaien willen tonen op de website.

Ik heb hiervoor een query gemaakt / gekregen en die draait dus op mijn computer, dat is deze;

select * FROM characters WHERE OnlineStatus = 1 ORDER BY `Exp` DESC LIMIT 0,300

Hoe kan ik deze nu op mijn website laten weergeven?

Hij geeft dus aan wie er online zou zijn.

Alvast bedankt
 
Dan moet je eerst contact maken met je database, d.m.v. mysql_connect ( host, user, password ). En daarna gewoon je database selecteren met mysql_select_db ( db_naam ).
 
Heb je daar toevallig een code voor? Ik ken namelijk bijna niets van php

Alvast heel erg bedankt
 
Ik heb net zelf iets gevonden op internet, ziet er wel aardig uit maar hoe kan ik dan ook de uiteindelijke query tonen?

<?php

$mysqlnaam = "*******";
$mysqlwachtwoord = "*****";
$host = "ipadres";
$db = "dbnaam";


?>
 
PHP:
<?php

$connection = mysql_connect ( 'host', 'username', 'password' );
$db = mysql_select_db ( 'database', $connection );

$result = mysql_query ( "SELECT * FROM characters WHERE OnlineStatus = 1 ORDER BY `Exp` DESC LIMIT 0,300" );

while ( $row = mysql_fetch_assoc ( $result ) ) {

  echo $row[ 'naamVanDeKolom' ];

}

?>

Zo doe je dat.
 
Zo te zien kan het dus op verschillende manieren.

Via een andere site hadden we nu dit gemaakt;

<?php

mysql_connect('ipadres' , 'user' , 'password');
mysql_select_db('databasenaam');

$sql = "SELECT *
FROM characters
WHERE OnlineStatus = 1
ORDER BY
characters.char_name ASC
LIMIT 0,300";
// query uitvoeren en de rest afhandelen.

?>

Hiermee word er echter alleen maar verbinding gemaakt denk ik maar niets op het scherm getoond. Dus er zou alleen nog een print of echo command bij moeten, toch?

Edit:

Die van jou werkt helemaal, en toont wel ook de namen uit de kolom op het scherm, rchter worden deze niet gescheiden door een enter of spatie, liefst door een enter. Hoe kan ik dit veranderen dat dit wel gebeurd?
 
Laatst bewerkt:
Als je regel 10 vervangt door:

PHP:
  echo $row[ 'naamVanDeKolom' ], '<br />';

Krijg je na elke naam een enter.
 
Het werkt nu inderdaad helemaal, alleen probeerde ik nu nog een 2e gegeven uit de database te laten weergeven maar daar ging het even mis...

Zou iemand nog zo vriendlijk willen zijn om te laten zien hoe ik er een 2e kan toevoegen?

Ik had nu namelijk van $result een regel bijgemaakt genaamd $result1, daarachter dan een andere query en dan achter while ... $row daar bij result ook een 1 erachter, maar toen kreeg ik allemaal fouten.

Deze query zou erbij moeten;

Select Sum(count) as total From `character_items` Where `item_id`='40308'
 
Ik begrijp het geloof ik niet helemaal.

Wat wil je precies bereiken met die query?
 
Oké, hoe heet het veld waar de hoeveelheid geld in staat? En waarom gebruik je dan een WHERE-clause als je het van alle spelers wilt hebben?
 
Die where is er omdat in de tabel waarin hij zoekt er meerdere item id's staan, dus die where zorgt ervoor dat hij alleen naar item id 40308 zoekt. Die query werkt ook gewoon.

Ik weet alleen niet hoe ik hem kan toevoegen aan de code zodat ook dat word getoond op de pagina
 
Je kunt dan bijvoorbeeld de volgende code gebruiken:

PHP:
$result2 = mysql_query ( "SELECT SUM(count) AS total FROM `character_items` WHERE `item_id`='40308'");

$row2 = mysql_fetch_assoc ( $result2 );

echo $row2[ 'total' ];
 
Dan was het me toch bijna gelukt, moest ik alleen ook achter row nog een ander nummer zetten.

Heel erg bedankt allemaal!
 
Waarom word er die ene keer trouwens command while gebruikt en bij de andere niet?

Zo kan ik bijvoorbeeld voor de 2e wel echo ("Totaal Adena:"); toevoegen en bij die 1e met while command niet
 
Je kunt als je gewoon echo gebruikt maar 1 record weergeven.

Als je meerdere records terugkrijgt uit je database, moet je er een loop voor gebruiken om ze allemaal weer te geven.

De while kijkt eigenlijk gewoon of er nog een 'ongebruikte' record is, zo ja, schuift ie de interne pointer een record op en gaat ie die record gebruiken voor de acties binnen de while.
 
Die laatste regel is voor mij te moeilijk om te begrijpen :p

Maar het is de bedoeling dat er voor de 1e query komt te staan Players Online: en daarachter het resultaat.

En voor de 2e Totaal Adena:, maar dat is me al gelukt.

Is het voor die 1e ook mogelijk?
 
Nou, punt 1 had je toch al?

PHP:
<?php 

  echo 'Players online:';
 
  $connection = mysql_connect ( 'host', 'username', 'password' );
  $db = mysql_select_db ( 'database', $connection );
 
  $result = mysql_query ( "SELECT * FROM characters WHERE OnlineStatus = 1 ORDER BY `Exp` DESC LIMIT 0,300" );
 
  while ( $row = mysql_fetch_assoc ( $result ) ) {
 
    echo $row[ 'naamVanDeKolom' ];
 
  }

?>

En de tweede is je ook al gelukt zeg je...
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan