Kan ik dit nu ook uit de MySQL database halen?
Link gekopieerd
- Aar - op 16/11/2011 15:43:17
Hoelang heb je er over gepuzzeld? ;-)
Geen idee, half uurtje, uurtje?
Ik hou wel van dit soort onzinnige uitdagingen.
Link gekopieerd
<?php
while ($row = mysql_fetch_assoc($result)) {
$start = strpos($row['veldnaam'], 'Eenheid:') + 9;
$end = strpos($row['veldnaam'], 'q.', $start) - 1;
$eenheid = trim(substr($row['veldnaam'], $start, $end-$start));
//enzovoort
}
?>
Link gekopieerd
Daniel Hartman op 16/11/2011 15:48:18
Kan ik dit nu ook uit de MySQL database halen?
Ja. $arr is in mijn script hetzelfde als drie records uit de database. Even aanpassen dus.
Link gekopieerd
Ik heb nu dit, maar ik krijg er niets uit...
Wat doe ik verkeerd?
<?
$result = mysql_query("SELECT * FROM `alarmeringen` WHERE `melding` LIKE '%Eenheid%' ORDER BY timestamp DESC LIMIT 3")
or die(mysql_error());
$arr = array($row['melding']);
$char = array_merge(range(ord('a'),ord('z')),range(ord('A'),ord('Z')),range(ord('0'),ord('9')),array(32));
foreach($arr as $val)
{
echo 'Eenheid: ' . intval(substr($val, strpos(strtolower($val), 'eenheid:')+8)) . '<br />';
$hlp = substr($val, strpos(strtolower($val), 'adres:')+6);
for($i=0;$i<strlen($hlp);$i++)
{
if(!in_array(ord($hlp[$i]), $char, true)) break;
}
echo 'Adres: ' . substr($hlp, 0, $i) . '<br />';
$hlp = substr($val, strpos(strtolower($val), 'plaats:')+7);
for($i=0;$i<strlen($hlp);$i++)
{
if(!in_array(ord($hlp[$i]), $char, true)) break;
}
echo 'Plaats: ' . substr($hlp, 0, $i) . '<br />';
$hlp = substr($val, strpos(strtolower($val), 'prio:')+5);
for($i=0;$i<strlen($hlp);$i++)
{
if(!in_array(ord($hlp[$i]), $char, true)) break;
}
echo 'Prio: ' . substr($hlp, 0, $i) . '<br />';
echo 'Tijd: ' . (substr($val, strpos(strtolower($val), 'tijd:')+5, +9)) . '<br />';
}
?>
Uiteraard ook een verbinding met de database!
Link gekopieerd
<?php
$result = mysql_query("SELECT * FROM `alarmeringen` WHERE `melding` LIKE '%Eenheid%' ORDER BY timestamp DESC LIMIT 3")
or die(mysql_error());
$char = array_merge(range(ord('a'),ord('z')),range(ord('A'),ord('Z')),range(ord('0'),ord('9')),array(32));
while($row = mysql_fetch_assoc($result))
{
$val = $row['melding'];
echo 'Eenheid: ' . intval(substr($val, strpos(strtolower($val), 'eenheid:')+8)) . '<br />';
$hlp = substr($val, strpos(strtolower($val), 'adres:')+6);
for($i=0;$i<strlen($hlp);$i++)
{
if(!in_array(ord($hlp[$i]), $char, true)) break;
}
echo 'Adres: ' . substr($hlp, 0, $i) . '<br />';
$hlp = substr($val, strpos(strtolower($val), 'plaats:')+7);
for($i=0;$i<strlen($hlp);$i++)
{
if(!in_array(ord($hlp[$i]), $char, true)) break;
}
echo 'Plaats: ' . substr($hlp, 0, $i) . '<br />';
$hlp = substr($val, strpos(strtolower($val), 'prio:')+5);
for($i=0;$i<strlen($hlp);$i++)
{
if(!in_array(ord($hlp[$i]), $char, true)) break;
}
echo 'Prio: ' . substr($hlp, 0, $i) . '<br />';
echo 'Tijd: ' . (substr($val, strpos(strtolower($val), 'tijd:')+5, +9)) . '<br />';
}
?>
Link gekopieerd
<?php
$result = mysql_query("SELECT * FROM `alarmeringen` WHERE `melding` LIKE '%Eenheid%' ORDER BY timestamp DESC LIMIT 3")
or die(mysql_error());
$arr = array($row['melding']);
?>
Hoe kom je bij $row['melding']?
Je query variabele is $result en geen $row
Een gebruik geen * maar alleen de velden die je wilt ophalen.
EDIT: SanThe was eerder
Link gekopieerd
Iedereen heel erg bedankt voor de hulp! Het is gelukt, en werkt perfect.
Dankjulliewel!
Link gekopieerd