database uitlezen en automatisch laten optellen ... uiteindelijk moet getal zichtbaar worden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Henry V

Henry V

06/06/2012 16:43:55
Quote Anchor link
Ik loop tegen een probleempje aan!

Ik heb bepaalde gegevens in een database staan
Nu heb ik in de admin een functie ingebouwd die de waardes uitleest (gesorteerd)

Maar nu komt mijn probleempje
Doordat nu alles gesorteerd word per product, krijg ik dus alle waades van die product te zien (Dit pas ik later aan naar X aantal per pagina, die oplossing heb ik al)

Maar ik wil nu eigenlijk nog een functie inbouwen, die alles in een bepaalde table bij elkaar opteld.
En dat het in de admin getoond gaat worden als een getal (Bijv. Totaal: 95)
Zodat ik niet zelf alles hoef op te tellen, maar dat ik de waardes direct kan zien in een getal.

Wie zou mij eventueel op weg kunnen helpen?
Alvast bedankt
 
PHP hulp

PHP hulp

15/11/2024 08:04:34
 
Obelix Idefix

Obelix Idefix

06/06/2012 16:48:02
Quote Anchor link
Wat wil je (op)tellen? Rijen, bedragen, aantallen?
mysql kan prima rekenen/tellen.
 
Henry V

Henry V

06/06/2012 16:56:06
Quote Anchor link
De table is als volgt opgebouwd

<code>
CREATE TABLE IF NOT EXISTS `cookie` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`date` datetime NOT NULL,
`ip` varchar(255) NOT NULL,
`hash` varchar(32) NOT NULL,
`allow` enum('yes','no') NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;
</code>

Nu is het mijn bedoeling om: allow uit te lezen.
Deze heeft 2 verschillende waardes, namelijk yes en no

Nu wil ik eigenlijk het volgende
Hij moet alles optellen met de waarde yes en dat weer gaan geven als een getal.
Zodat ik in de admin niet alle pagina's moet gaan tellen,
maar gewoon direct kan inzien hoeveel er totaal met yes zijn

Maar hoe moet ik die optel som maken?
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

06/06/2012 17:07:58
Quote Anchor link
Heel simpel:
SELECT COUNT(*) AS total
WHERE allow='yes'
 
Henry V

Henry V

06/06/2012 18:06:02
Quote Anchor link
Om alles uit te lezen heb ik volgende gedaan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
require("../config.inc.php");

    $getaa = mysql_query("SELECT * FROM cookie WHERE (allow='yes') ORDER BY date DESC ");
    while($geta = mysql_fetch_array($getaa))
{

$id = ("$geta[id]");
$ip = ("$geta[ip]");
$date = ("$geta[date]");
$allow = ("$geta[allow]");

?>


Nu wilde ik ja uitlezen in een getal
En heb ik het volgende gedaan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
require("../config.inc.php");
    
    $getaa = mysql_query("SELECT COUNT(*) AS total WHERE allow='yes' ");  
    
{

$allow = ("$geta[allow]");

?>


<table border="0" cellpadding="5" width="100%">
<tr>
<td width="50%" class="TextListe" bgcolor="#B3E6B3"><b>Totaal:</b>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo $allow ?>
</td>
<td width="50%" class="TextListe" bgcolor="#B3E6B3"><b>Totaal:</b> ...</td>
</tr>
</table>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
}
?>


Maar ik krijg geen resultaat
Wat doe ik verkeerd?
 
Obelix Idefix

Obelix Idefix

06/06/2012 18:12:52
Quote Anchor link
Code aub tussen code-tags.
In je 1e code fetch je wel, in je tweede niet.
Waarom die variabele tussen () en "" ?
Bouw foutafhandeling in.
Waarom in je 1e script kopiëren van variabelen? Ook daar: waarom () en ""?
 
Henry V

Henry V

06/06/2012 18:21:34
Quote Anchor link
Excusses de volgende keer zal ik denken aan de code-tags ;)

Ik werk pas met php en met Mysql sinds 2 jaar
Maar aldoende leert men ;)

Ik had die while er in 1ste instantie ook bij staan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
require("../config.inc.php");
    
    $getaa = mysql_query("SELECT COUNT(*) AS total WHERE allow='yes' ");  
    while($geta = mysql_fetch_array($getaa))  
    
{

$allow = ("$geta[allow]");

?>


Maar kreeg ik deze fout melding in de browser te zien:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/admin/domains/----------/public_html/admin/extra/cookies.inc.php on line 23
?>


Vandaar dat ik het ook zonder probeerde
Bye the way ... line 23 is waar while staat.
 
Obelix Idefix

Obelix Idefix

06/06/2012 18:37:58
Quote Anchor link
Waarom die (" ") om de variabele heen zetten?
Geen foutafhandeling in je query.
Je hebt maar 1 resultaat; je hebt dus geen while nodig. Alleen fetchen is voldoende.
Waar zou allow vandaan moeten komen in geta[allow] ?
 
Henry V

Henry V

06/06/2012 19:55:02
Quote Anchor link
Mijn probleem is inmiddels opgelost.
Door onderstaande:

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
require("../config.inc.php");

    $getaa = mysql_query("SELECT COUNT(*) AS total_yes FROM cookie WHERE allow='yes'");
    $geta = mysql_fetch_object($getaa);
    $total_yes = $geta->total_yes;
    $getaa = mysql_query("SELECT COUNT(*) AS total_no FROM cookie WHERE allow='no'");
    $geta = mysql_fetch_object($getaa);
    $total_no = $geta->total_no;

echo "<table border='0' cellpadding='5' width='100%'>
  <tr>
    <td width='50%' class='TextListe' bgcolor='#B3E6B3'><b>Totaal: &nbsp;&nbsp;&nbsp;&nbsp;</b> "
.$total_yes."</td>
    <td width='50%' class='TextListe' bgcolor='#B3E6B3'><b>Totaal: &nbsp;&nbsp;&nbsp;&nbsp;</b> "
.$total_no."</td>
  </tr>
</table>"
;

?>


Zoals eerder gezegt verdiep ik me pas sinds 2 jaar in php en mysql.
Ik weet ook nog lang niet alles ;)

Waarom ("")! zo kreeg ik het werkend, vandaar nu ook weer gebruikt
Maar wat is dan het verschil als ik met ("") gebruik en als ik die niet gebruik?
Foutafhandeling vergeet ik inderdaad heel vaak.
En tot nu toe heb ik nog nooit een optel sommetje gemaakt, vandaar dat ik while gebruikte.

Maar alsnog bedankt voor de stap in de goeie richting. ;)
 
Roel -

Roel -

06/06/2012 20:02:32
Quote Anchor link
Ik verwijs je graag door naar mijn tutorial: Beginnersfouten tegengaan
 
Obelix Idefix

Obelix Idefix

06/06/2012 21:01:01
Quote Anchor link
html = "
php (echo) = '

Waarom fetch_object?
 



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.