login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Systeem Documentatie

Offline spiky - 17/06/2005 09:38
Avatar van spikyNieuw lid hoi,

Ik ben bezig met een systeem documentatie voor mijn werk.
Ik werk bij een kinderopvang, dus we hebben gebruikers intern en extern(op lokatie).
Ik heb gebruik gemaakt van 3 tabellen.

- Systemen (hier staat alles van over het systeem in)
- Intern (hier staan alle interne gebruikers in)
- Extern (hier staan alle externe gebruiers in (lokaties))

Nu heb ik alles netjes voor elkaar.
Ook kan ik de gegevens van de systemen netjes weergeven bij de gebruiker enzo.
Alles mooi koppelen...
Ik zit alleen met 1 probleem.
Ik wil een overzicht maken van alle systemen die dus niet in gebruik zijn.

Hou zou ik dan kunnen doen:?:

Moet ik dan dubbele query's maken?
Ik zit hier al een tijd mee te klooien, maar mischien kan het simpeler.

Weet iemand mischien een oplossing voor mij?
(als het moet kan ik ook de SQL structuur even posten)

Groetjes Erik

8 antwoorden

Gesponsorde links
Offline Martijn1989 - 17/06/2005 11:13
Avatar van Martijn1989 PHP ver gevorderde Je zou een query kunnen gebruiken met : WHERE gebruik=ja

En dan in systemen een extra kolometje zetten met gebruik , ja of nee

Bedoel je dit of niet?:cool:
Offline spiky - 17/06/2005 13:20 (laatste wijziging 17/06/2005 14:23)
Avatar van spiky Nieuw lid Nee, dat bedoel ik niet.

Ik geef bij de gebruiker gewoon een pcnummer op die correspondeerd met het systeem nummer uit de systeem tabel.

dus:
  1. <?php
  2. $query = mysql_query("SELECT * FROM systeem WHERE pcnummer = $pc ") or die(mysql_error());
  3. ?>


$pc is het nummer dat dus bij de gebruiker staat.
Offline prorsoft - 17/06/2005 13:24
Avatar van prorsoft PHP gevorderde Nested queries.

SELECT * FROM systeem WHERE pcnummer=(SELECT pcnummer FROM gebruikers WHERE gebruikersnaam=7)

Bedoel je dit soms?
Offline Disa - 17/06/2005 14:00 (laatste wijziging 17/06/2005 14:01)
Avatar van Disa PHP interesse
  1. <?php
  2. $query = mysql_query("SELECT * FROM systeem WHERE gebruik='N' ") or die(mysql_error());
  3. while ($sql = mysql_fetch_assoc($query)) {
  4. echo "Pc: ".$sql['pcnummer'];
  5. }
  6. ?>


zoiets?

Dit is basic stuff..
Offline spiky - 17/06/2005 14:19 (laatste wijziging 17/06/2005 14:20)
Avatar van spiky Nieuw lid CREATE TABLE `extern` (
`id` int(2) NOT NULL auto_increment,
`lokatie` varchar(20) NOT NULL default '',
`pc` int(5) default NULL,
`beeldscherm` varchar(50) NOT NULL default '',
`printer` varchar(50) NOT NULL default '',
`extra` text NOT NULL,
`adsl` int(1) NOT NULL default '0',
`serienr` varchar(11) NOT NULL default '',
`user` varchar(25) NOT NULL default '',
`pass` varchar(25) NOT NULL default '',
`datum` date NOT NULL default '0000-00-00',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=29 ;

CREATE TABLE `intern` (
`id` int(2) NOT NULL auto_increment,
`gebruiker` varchar(50) NOT NULL default '',
`login` varchar(50) NOT NULL default '',
`pass` varchar(50) NOT NULL default '',
`pc` int(2) NOT NULL default '0',
`printer` varchar(50) NOT NULL default '',
`beeldscherm` varchar(50) NOT NULL default '',
`brander` varchar(50) NOT NULL default '',
`toetsenbord` varchar(50) NOT NULL default '',
`muis` varchar(50) NOT NULL default '',
`afdeling` varchar(50) NOT NULL default '',
`extra` text NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=44 ;

CREATE TABLE `systeem` (
`id` int(2) NOT NULL auto_increment,
`pcnummer` int(3) NOT NULL default '0',
`moederbord` varchar(50) NOT NULL default '',
`processor` varchar(50) NOT NULL default '',
`geheugen` varchar(50) NOT NULL default '',
`harddisk` varchar(50) NOT NULL default '',
`video` varchar(50) NOT NULL default '',
`modem` varchar(50) NOT NULL default '',
`netwerkkaart` varchar(50) NOT NULL default '',
`cdrom` varchar(50) NOT NULL default '',
`serialkey` varchar(50) NOT NULL default '',
`productkey` varchar(30) NOT NULL default '',
`asdatum` date NOT NULL default '0000-00-00',
`uddatum` datetime NOT NULL default '0000-00-00 00:00:00',
`opmerking` text NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=150 ;

dit zijn de 3 tabellen die ik gebruik...
Ik wil dus een overzicht hebben van alle systemen die NIET in gebruik zijn.
Als ik bij gebruiker of lokatie een pc nummer invul, dan koppelt hij dat.
Maar kan ik het simpel doen?
ik heb dit al geprobeerd, maar dat werkt ook niet:
  1. <?php
  2. $query = mysql_query("SELECT * FROM systeem, intern, extern WHERE intern.pc != systeem.pcnummer AND extern.pc != systeem.pcnummer") or die(mysql_error());
  3. $aantal = mysql_num_rows($query);
  4. while ($record = mysql_fetch_object($query))
  5. {
  6. echo " <tr>
  7. <td width='100'>$record->pc</td><td width='100'>$record->moederbord</td>
  8. </tr>";
  9. }
  10.  
  11. echo "Er zijn $aantal resultaten gevonden...";
  12. ?>

dan krijg ik: Er zijn 55698 resultaten gevonden...
Hij herhaalt alles! 
Offline spiky - 21/06/2005 12:46 (laatste wijziging 21/06/2005 12:47)
Avatar van spiky Nieuw lid
  1. <!-- Begin lokaties -->
  2. <?php
  3. $query = mysql_query("Select * FROM systeem, extern WHERE extern.pc = systeem.pcnummer ORDER BY extern.pc") or die(mysql_error());
  4. $aantal = mysql_num_rows($query);
  5. while ($record = mysql_fetch_object($query))
  6. {
  7. echo " <tr>
  8. <td width='100'>$record->pc</td><td width='400'>$record->lokatie</td>
  9. </tr>";
  10. }
  11. echo "Er zijn $aantal Lokatie's gevonden...";
  12. ?>
  13. <!-- Einde lokaties, begin gebruikers -->
  14. <?php
  15. $query = mysql_query("Select * FROM systeem, intern WHERE intern.pc = systeem.pcnummer ORDER BY intern.pc") or die(mysql_error());
  16. $aantal = mysql_num_rows($query);
  17. while ($record = mysql_fetch_object($query))
  18. {
  19. echo " <tr>
  20. <td width='100'>$record->pc</td><td width='400'>$record->gebruiker</td>
  21. </tr>";
  22. }
  23. echo "Er zijn $aantal gebruikers gevonden...";
  24. ?>
  25. <!-- Einde gebruikers, begin overige -->
  26. <?php
  27. $query = mysql_query("SELECT * FROM systeem, intern, extern WHERE intern.pc != systeem.pcnummer AND extern.pc != systeem.pcnummer") or die(mysql_error());
  28. $aantal = mysql_num_rows($query);
  29. while ($record = mysql_fetch_object($query))
  30. {
  31. echo " <tr>
  32. <td width='100'>$record->pc</td><td width='100'>$record->moederbord</td>
  33. </tr>";
  34. }
  35.  
  36. echo "Er zijn $aantal resultaten gevonden...";
  37. ?>
  38. <!-- Einde overige -->


Weet iemand al hoe ik dus alle overige kan uitlezen?
De bovenste 2 werken wel (lokatie + Systemen), maar de onderste niet (overige)
Dan krijg ik 5000 resultaten...

iemand enig id:?:
Offline Gerard - 21/06/2005 14:58
Avatar van Gerard Ouwe rakker natuurlijk
je haalt ALLE records op waarbij 2 statements FALSE moeten zijn, gekeken naar de info erboven is dit vaak wel, en omdat het alle recordsophaalt * 3 mogelijkheden waarom het FALSE kan zijn krijg je zoveel records.
Offline spiky - 22/06/2005 09:20
Avatar van spiky Nieuw lid
Citaat:
natuurlijk
je haalt ALLE records op waarbij 2 statements FALSE moeten zijn, gekeken naar de info erboven is dit vaak wel, en omdat het alle recordsophaalt * 3 mogelijkheden waarom het FALSE kan zijn krijg je zoveel records.


Heb je enig id hoe ik het dan wel kan ophalen zonder die andere erbij en * 3:?:
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.219s