If where PHP mysql tabel echo

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Chris Broekz

Chris Broekz

13/12/2010 14:15:05
Quote Anchor link
Hallo ik heb een probleem, ik wil graag dat de text ONLINE komt als mijn MySQL database aangeeft dat ACCT=1 in GUID van CHARACTERS als ONLINE=1
en OFFLINE aangeeft als ACCT=1 in GUID van CHARACTERS als ONLINE=0

Ik heb verschillende dingen geprobeert:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php  
$connection
= mysql_connect($host, $user, $pass) or die("Could not connect to server.");
mysql_select_db($chardb) or die("Could not select database");
$result = mysql_query("SELECT guid FROM characters WHERE acct='1' AND online='1'", $connection);
if (!$result) {
        echo "Offline";
    }
else{
        echo "Online";
}

?>





<?php  
$connection
= mysql_connect($host, $user, $pass) or die("Could not connect to server.");
mysql_select_db($chardb) or die("Could not select database");
$query = mysql_query("SELECT guid FROM characters WHERE acct='1' AND online='1'", $connection);
if(online == 1){
        echo "Online";
    }
else{
        echo "Offline";
}

?>


Maar deze blijfen helaas hangen op Offline of Online.
Ik weet niet wat ik fout doe.

Alvast bedankt!
 
PHP hulp

PHP hulp

18/04/2024 15:27:21
 
Wouter J

Wouter J

13/12/2010 14:56:24
Quote Anchor link
Wat betekend dit?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if(online == 1)
?>


Waar defineer je online?
 
Chris Broekz

Chris Broekz

13/12/2010 15:00:07
Quote Anchor link
Ik wist op die row niet zo goed wat ik deed, maar bij een vergelijkbaar script paste hij ook zoiets toe.

Maar mijn bedoeling was gewoon ALS online 1 als value had in mijn DB dan.....
 
Wouter J

Wouter J

13/12/2010 15:09:02
Quote Anchor link
Ik begrijp nog steeds niet waar je die online vandaan haalt? Uit de database?

En gebruik geen or die, maar een goede fouthandeling waarmee je kijkt of de var. false of true returned: Goede foutafhandeling mysql
In dat script zie je ook meteen hoe je variabelen uit je database haalt.
 
Chris Broekz

Chris Broekz

13/12/2010 15:14:36
Quote Anchor link
Ja online komt uit de database, hij is gevult met 0 als een user niet ingelogged is en 1 als de user online is. Ik kan je wel een batch geven als dat nodig is als voorbeeld.
 
Wouter J

Wouter J

13/12/2010 15:19:17
Quote Anchor link
Gegevens uit een database halen doe je zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
//Hier de connectie en database selecteren enzo

$query = "SELECT id, naam, online FROM tabel WHERE id='5'";
$result = mysql_query($query, $mysqlconnectie);

if(!$result) { //Als result niet goed is gegaan
  echo "Er is iets fout gegaan!";
}

else {

  while($row = myqsl_fetch_assoc($result)) { //Voor elke waarde van result dit doen
    if($row['online'] == 1) { //Als $row['online'] is 1, dus als online is 1
      echo $row['naam']." is online!";
    }
  }
}

?>
 
Chris Broekz

Chris Broekz

13/12/2010 15:31:03
Quote Anchor link
Okey, ik heb het geprobeert, een beetje aangepast maar hij blijft zeggen: Er is iets fout gegaan. Okal log ik in met de user.
Ik heb het script ook origineel gedraait met alleen de MySQL informatie erbij, maar dan doet die precies hetzelfde.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
//Hier de connectie en database selecteren enzo
$errorsql = "MySQL information is incorrect.";
$host = "localhost";
$user = "root";
$pass = "*********";
$mysqlconnectie = mysql_connect($host, $user, $pass) or die($errorsql);
mysql_select_db($dbnaam) or die($errordb);
$query = "SELECT guid FROM characters WHERE online='1' AND acct='1'";
$result = mysql_query($query, $mysqlconnectie);

if(!$result) { //Als result niet goed is gegaan
  echo "Er is iets fout gegaan!";
}

else {

  while($row = myqsl_fetch_assoc($result)) { //Voor elke waarde van result dit doen
    if($row['online'] == 1) { //Als $row['online'] is 1, dus als online is 1
      echo $row['naam']." is online!";
    }
  }
}

?>
Gewijzigd op 13/12/2010 15:31:20 door Chris Broekz
 
- SanThe -

- SanThe -

13/12/2010 16:10:23
Quote Anchor link
Je query zal mislukt zijn. Nette foutafhandeling ontbreekt. En $row['online'] en $row['naam'] zullen niet bestaan want die haal je niet op. Zet ook error_reporting(E_ALL) eens aan.
 
Wouter J

Wouter J

13/12/2010 16:11:58
Quote Anchor link
Maak er eens dit van:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php

  if(!$result) {
    echo "Er is iets fout gegaan!".mysql_error($result);
  }


?>


En je haalt alleen guid op. Nu kan je dus niet die while doen. Je moet daarvoor namelijk ook online en naam hebben opgehaald.

Weet je eigenlijk wel wat je nu precies hebt gedaan?
 
Chris Broekz

Chris Broekz

13/12/2010 16:12:01
Quote Anchor link
Laat maar, ik gebruik nu gewoon deze:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php  
$connection
= mysql_connect($host, $user, $pass) or die("Could not connect to server.");
mysql_select_db($chardb) or die("Could not select database");
$query = mysql_query("SELECT guid FROM characters WHERE acct='1' AND online='1'", $connection);
        $total = mysql_num_rows($query);
        echo $total;
?>

Deze geeft een cijfer 1 of 2 aan. En bij de beschrijving zet ik gewoon dat
0 = offline 1 = online.
 
- SanThe -

- SanThe -

13/12/2010 16:19:38
Quote Anchor link
Jammer dat je nooit wat met de antwoorden doet.
 
Chris Broekz

Chris Broekz

13/12/2010 16:29:04
Quote Anchor link
Nooit wat met je antwoorden doet zegt die,
ik heb dankzij deze forum al twee dingen opgelost van de *4 ;)
Ik wil graag weer aan de slag met andere dingen inplaats van uren lang voor
één dingetje zitten te ouwehoeren terwijl het gemakelijk minder professioneel
kan. Als dit een belangrijke functie voor mijn website was dan had ik hier wel
meer moeite en tijd ingestopt. En vroeg of later kom ik er toch wel weer achter ;)

- SanThe - op 13/12/2010 16:19:38:
Jammer dat je nooit wat met de antwoorden doet.
Gewijzigd op 13/12/2010 16:31:25 door Chris Broekz
 
Wouter J

Wouter J

13/12/2010 16:35:55
Quote Anchor link
Laat het duidelijk zijn dat dit de laatste keer is dat ik Chris ga helpen.

Bij webdevelopment draait het om alle kleine regeltjes/systemen.
En daarnaast is mij in dit topic duidelijk dat jij niet weet hoe jij iets uit de database haalt.

Chris Broekz:
ik heb dankzij deze forum al twee dingen opgelost van de *4 ;)

Als je dit opgelost vind dan kom je wel ver inderdaad...
 
Chris Broekz

Chris Broekz

13/12/2010 20:49:04
Quote Anchor link
Erg jammer dat je me niet meer zou willen helpen, ik waardeer echt dat je me probeert te helpen en soms snap ik sommige dingen niet want ik ben tamelijk nieuw tot PHP.
Maar ik ben hier gewoon bezig met een beetje uitproberen wat mogelijk is enz.

Het is niet alsof ik een proffesionele website aan het bouwen ben, en als het na een poosje niet lukt ga ik liever ergens anders mee aan de slag.

Maar toch bedankt.

Wouter J op 13/12/2010 16:35:55:
Laat het duidelijk zijn dat dit de laatste keer is dat ik Chris ga helpen.

Bij webdevelopment draait het om alle kleine regeltjes/systemen.
En daarnaast is mij in dit topic duidelijk dat jij niet weet hoe jij iets uit de database haalt.

Chris Broekz:
ik heb dankzij deze forum al twee dingen opgelost van de *4 ;)

Als je dit opgelost vind dan kom je wel ver inderdaad...
Gewijzigd op 13/12/2010 20:57:40 door Chris Broekz
 
Jonathan de Vries

Jonathan de Vries

13/12/2010 21:03:46
Quote Anchor link
Chris,

Wij zijn ook bereid om jou te helpen zolang je maar leest wat er voor antwoorden gegeven worden.
Dit heb je niet of nauwelijks gedaan in alle bovengenoemde voorbeelden/antwoorden.
Er werd een goed werkend voorbeeld gegeven, alleen was deze uiteindelijk niet van toepassing op jou manier.
Als je het voorbeeld goed gelezen had had je ook gemerkt dat deze niet zou werken omdat deze waardes uit een database halen die in jouw ontwerp niet voorkomen.

- Daar heb je dus het punt van goed lezen.

Daarbuiten raad ik je aan om een basis cursus mysql met php te nemen.
Dat zal het voor jezelf vergemakkelijken.

*Voor je eigen ontwerp nog:
Je selecteerd al op mensen die 'online' moeten zijn:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
WHERE acct='1' AND online='1'

Dus dan hoef je alleen nog maar zoals je in je eigen voorbeeld ook al toonde te kijken of je op zijn minst wel een rij terug krijgt.

Of dit echt heel netjes is, daar valt over te discuzeuren.
Om het voor jezelf verder wel netter te maken kan je altijd echoën op je antwoord:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
if($total == 1){
   echo 'Online';
}

else
{
   echo 'Offline';
}

?>


Succes verder!
 
Wouter J

Wouter J

13/12/2010 21:48:26
Quote Anchor link
Chris Broekz:
soms snap ik sommige dingen niet want ik ben tamelijk nieuw tot PHP.

Precies om deze rede plaats ik comments bij mijn script. Alles wat oranje is is uitleg van wat er op die regel gebeurd. Als je dit goed leest en zelf een beetje opzoekt kan je zoiets goed toepassen op je eigen script.

En verder wat Jonathan zegt. Ik zou nooit precies antwoord geven op de vraag, ik zal altijd alleen voorbeeld code (met uitleg) of linkjes geven. Anders ben ik van mening dat men er niks van leert.
 
Chris Broekz

Chris Broekz

14/12/2010 00:05:05
Quote Anchor link
Bedankt Jonathan,
nu je het zo zegt klinkt het zo logisch.

Het werkt uiteraard nu, ik zou voortaan meer mijn best doen om tot een oplossing te komen ;)

Wouter, jij ook bedankt voor het helpen :)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php  
$connection
= mysql_connect($host, $user, $pass) or die("Could not connect to server.");
mysql_select_db($chardb) or die("Could not select database");
$query = mysql_query("SELECT guid FROM characters WHERE acct='1' AND online='1'", $connection);
        $total = mysql_num_rows($query);
if($total == 1){
   echo 'Online';
}

else
{
   echo 'Offline';
}

?>
Gewijzigd op 14/12/2010 00:05:31 door Chris Broekz
 



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.