Samenvoegen van rijen php/mysql

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Peter

Peter

18/07/2009 16:48:00
Quote Anchor link
Hallo ik ben bezig met een monitor systeem voor een p2000 site.

Ik heb hiervoor een database aangemaakt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
CREATE TABLE meldingen (
  id int(11) NOT NULL auto_increment,
  capcode text NOT NULL,
  tijd text NOT NULL,
  datum text NOT NULL,
  soort text NOT NULL,
  melding text NOT NULL,
  label text NOT NULL,
  PRIMARY KEY  (id)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1;


Enkele meldingen die erin staan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
(11, '0107131', '12:38:45', '18-07-09', 'GROUP', 'WOONZORGCENTRUM FERM = LOOS ALARM', 'BRW Kennemerland Haarlem-Oost (Vrijwilligers Blusgroep 2)'),
(12, '0107181', '12:38:45', '18-07-09', 'GROUP', 'WOONZORGCENTRUM FERM = LOOS ALARM', 'BRW Kennemerland Haarlem-Oost (Lichtkrant)'),
(13, '0108999', '12:38:45', '18-07-09', 'GROUP', 'WOONZORGCENTRUM FERM = LOOS ALARM', 'BRW Kennemerland Monitorcode'),
(14, '1033234', '12:39:05', '18-07-09', 'ALPHA', 'Nogmaals OVD 1005 bellen svp. JefPlo', 'Politie Limburg-Zuid '),


Nu wil ik dus dat als de gegevens uit de database worden gehaald het zo tonen als op http://www.xs4all.nl/~nsvtv/p2Kflex/ en http://monitor.livep2000.nl/

Bij een melding met meerdere eenheden kom ik in de problemen.
Ik krijg echter 6 keer de melding. Ik wil 1 maal de melding hebben en dan alle eenheden die erbij horen eronder.

Weet iemand hoe ik ervoor kan zorgen dat hij maar 1 keer de melding toont maar wel alle eenheden erbij?
Gewijzigd op 01/01/1970 01:00:00 door Peter
 
PHP hulp

PHP hulp

18/07/2024 00:37:02
 
Nigel

Nigel

18/07/2009 19:16:00
Quote Anchor link
Als je een voorbeeld geeft wat je nu hebt kan er misschien aan meegeholpen worden om jouw een idee te geven hoe je het kan doen?
Gewijzigd op 01/01/1970 01:00:00 door Nigel
 
Hans Heesbeen

Hans Heesbeen

08/06/2010 21:50:23
Quote Anchor link
Ik heb het zelfe probleem, vaak een adres andere wagens/status...

nu heb ik steeds dit:
MELDING: PASTOORVANBEURDENSTRAAT 0 TILBURG
EENHEID: MOTOR TIJD MELDING: 20:57:19
PRIORITEIT: PRIO3 STATUS: VRIJ

MELDING: PASTOORVANBEURDENSTRAAT 0 TILBURG
EENHEID: NOODHULP TIJD MELDING: 20:57:19
PRIORITEIT: PRIO3 STATUS: VRIJ

Dat zou moeten worden:
MELDING: PASTOORVANBEURDENSTRAAT 0 TILBURG
EENHEID: NOODHULP STATUS: VRIJ
EENHEID: MOTOR STATUS: VRIJ

en dan dat de wagens onder het adres staat en alleen de status verspringt.
Elke regel wordt apart weggeschreven in de db: adres huisnr plaats eenheid status

Wie o wie kan en wil mij helpen?

Alvast dank Hans
 
- SanThe -

- SanThe -

08/06/2010 22:09:13
Quote Anchor link
Dit is tekst en geen tijd en datum:

tijd text NOT NULL,
datum text NOT NULL,

Daar kan je dus niet op zoeken en/of sorteren.
Gebruik het juiste veldformat.
 
Milo S

Milo S

08/06/2010 22:46:09
Quote Anchor link
Hmmm, ik denk dat je wel wat met group by zou moeten doen, maar misschien heb je al een beetje code voor ons met hoe je je resultaat nu krijgt?

En wat Santhe bedoelt is; dat je datum en tijd ook echt moet opslaan als date / time, nog beter in jou geval is denk 1 veld met datumtijd DATETIME.
 
Hans Heesbeen

Hans Heesbeen

09/06/2010 00:05:32
Quote Anchor link
Ik heb nog nooit iets met php gedaan ter info, dit zijn mijn eerste stapjes...
Het kopje tijd is timestamp ON UPDATE CURRENT_TIMESTAMP

De code:
<META HTTP-EQUIV=Refresh CONTENT="20">
<BODY BGCOLOR="black" TEXT="red" LINK="red" VLINK="red" ALINK="white">
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
$host
="****"; // Host name
$username="****"; // Mysql username
$password="****"; // Mysql password
$db_name="****"; // Database name
$tbl_name="****"; // Table name

// Connect to server and select databse

mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");


$sql = 'SELECT DISTINCT * FROM `filter` group BY `tijd`  DESC LIMIT 0, 25 ';
$result1=mysql_query($sql);

while($r=mysql_fetch_array($result1))
{

   $a=$r["bericht_id"];
   $b=$r["hnr"];
   $c=$r["plts"];
   $d=$r["prio"];
   $e=$r["tmld"];
   $f=$r["lab"];
   $g=$r["man"];
   $h=$r["timenotation"];
   $i=$r["adr"];
   $j=$r["tijd"];
   $k=$r["sta"];

$patterns = array();
$patterns[1] = '/AFGEWERKT/';
$patterns[2] = '/AANRIJDEND/';
$patterns[3] = '/TERPLAATSE/';
$patterns[4] = '/NINZETBAAR/';
$patterns[5] = '/BEZET/';
$replacements = array();
$replacements[1] = 'VRIJ ';
$replacements[2] = 'AANRIJDEND  ';
$replacements[3] = 'TERPLAATSE ';
$replacements[4] = 'NIET INZETBAAR ';
$replacements[5] = 'BEZET ';


$l = preg_replace($patterns, $replacements, $k);

//echo "$f $k <td><a href='http://maps.google.nl/maps?q=". $i ."+". $b ."+".$c."'target='_rechts'>$i $b $c </a></td><br>";
//echo "$d $e $g $f <BR>" ;
//echo "$j<BR><BR>";
//echo "<FONT color='white'><B>HET GMK MAAKTE OM $e EEN $d MELDING AAN VOOR DE $f $g OP HET ADRES: $i $b TE $c <BR>
//DE $f $l OM $h .<BR> DE LOCATIE: <td><a href='http://maps.google.nl/maps?q=". $i ."+". $b ."+".$c."'target='_rechts'>$i $b $c </a></td><BR><br>";


echo "<B><FONT color='33CCFF'><U>MELDING: </B><FONT color='Yellow'></U><td><a href='http://maps.google.nl/maps?q=". $i ."+". $b ."+".$c."'target='_rechts'>$i $b $c </a></td><BR>";
echo "<B><FONT color='33CCFF'><U>TIJD:</B><FONT color='Yellow'></U> $j<BR>";
echo "<B><FONT color='33CCFF'><U>EENHEID:</B><FONT color='Yellow'></U> $f <B><FONT color='33CCFF'><U>TIJD MELDING:</B><FONT color='yellow'></U> $e<BR>";
echo "<B><FONT color='33CCFF'><U>PRIORITEIT:</B><FONT color='Yellow'></U> $d <B><FONT color='33CCFF'><U>STATUS:</B><FONT color='Yellow'></U> $l <bR><bR>";

}

?>
 
Hans Heesbeen

Hans Heesbeen

09/06/2010 00:14:34
Quote Anchor link
tmld time Ja NULL
is hoe ik het in phpmyadmin zie staan
 



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.