Ow jee, denk dat ik nu heel veel moet lezen...quote:Op zondag 26 juli 2009 23:19 schreef Roönaän het volgende:
[..]
Bedenk even dat je de boel ook nog door time() moet halen..
Je kunt het natuurlijk ook gewoon hier vragen!quote:Op zondag 26 juli 2009 23:53 schreef F4T4L_3RR0R het volgende:
[..]
Ow jee, denk dat ik nu heel veel moet lezen...
Bij deze!quote:Op maandag 27 juli 2009 00:15 schreef GlowMouse het volgende:
[..]
Je kunt het natuurlijk ook gewoon hier vragen!
quote:Op maandag 27 juli 2009 00:17 schreef LeNick het volgende:
tvp
Succes: http://nl2.php.net/manual/en/book.pcre.phpquote:Op maandag 27 juli 2009 00:24 schreef F4T4L_3RR0R het volgende:
[..]
Bij deze!
Ik hoef niet alles voorgekauwd te hebben hoor, maar een duwtje in de goede richting kan geen kwaad.
$string = "bla bla bla bla 13:12 bla bla bla"
Hoe vis ik daar de tijd uit zonder te exploden of substr te gebruiken?
Dus zonder regex, zonder explode en zonder substr?quote:Op maandag 27 juli 2009 17:49 schreef F4T4L_3RR0R het volgende:
Kan iemand mij verder op pad helpen met de tijd uit een $ halen en in een nieuwe $ te zetten? (zonder gebruik te maken van regex)
Juist.quote:Op maandag 27 juli 2009 19:24 schreef Roönaän het volgende:
[..]
Dus zonder regex, zonder explode en zonder substr?
De datum kan 1-1-2009 zijn maar soms ook 01-01-2009. Zelfde met de tijd, deze kan 9:00 of 09:00 zijn. Substr is dan niet mogelijk.quote:Op maandag 27 juli 2009 20:12 schreef ralfie het volgende:
geen regex kan ik me voorstellen, maar waarom zou je in godesnaam geen explode of zelfs substr willen gebruiken ??
1 2 3 4 5 6 | if($price<$artikel[$row['artId']]['prijs'] || !isset($artikel[$row['artId']]['prijs'])){ $artikel[$row['artId']]['prijs']=$price; } echo $row['artId'].' '.$price.' '.$artikel[$row['artId']]['prijs'].'<br />'; ?> |
1 2 3 4 | 3 14,95 14,95 3 9,95 9,95 3 14,95 14,95 |
1 2 3 4 | 3 14,95 14,95 3 9,95 9,95 3 14,95 9,95 |
Maar wat Fatal_error wil, kan heel goed met een regex. En dat wordt dan geen ingewikkelde regex.quote:Op maandag 27 juli 2009 20:15 schreef GlowMouse het volgende:
Some people, when confronted with a problem, think "I know, I'll use regular expressions." Now they have two problems.
Als die eerste twee (995 en 1495) getallen zijn, dan klopt het dat 995 < 1495. En die laatste twee zijn vast strings, dan is 9 > 1 en dus 9,95 > 14,95.quote:Op maandag 27 juli 2009 22:51 schreef Swetsenegger het volgende:
nee, blijkbaar gaat het vergelijken van een float in een string niet goed. Omdat ik het in de database toch als centen opsla, laat ik de number_format er nu pas na het vergelijk op los en dat werkt zoals verwacht.
995 is blijkbaar wel kleiner dan 1495, maar 9,95 is blijkbaar niet kleiner dan 14,95.
Ja dan vraag je ook wel om problemen eigenlijkquote:Op maandag 27 juli 2009 22:51 schreef Swetsenegger het volgende:
nee, blijkbaar gaat het vergelijken van een float in een string niet goed.
Heb op aanraden (don't ask why) al zoveel mogelijk regex vervangen door alternatieven.quote:Op maandag 27 juli 2009 23:00 schreef Light het volgende:
[..]
Maar wat Fatal_error wil, kan heel goed met een regex. En dat wordt dan geen ingewikkelde regex.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | function striphtml($trimmed) { $arrhtml = explode("\n", $trimmed); $resulthtml = array(); for ($ihtml = 2, $sizehtml = count($arrhtml); $ihtml < ($sizehtml - 1); $ihtml++) { $resulthtml[] = $arrhtml[$ihtml]; } return $resulthtml; } $clean = implode("\n", striphtml($trimmed)); ?> |
quote:Op maandag 27 juli 2009 23:33 schreef F4T4L_3RR0R het volgende:
[..]
Heb op aanraden (don't ask why) al zoveel mogelijk regex vervangen door alternatieven.
Maar ben toch benieuwd naar de regex oplossing.
1 2 3 | $regex = '/(\d{1,2})-(\d{1,2})-(\d{4})\s+(\d{1,2}):(\d{2})/'; ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | function striphtml($trimmed) { $arrhtml = explode("\n", $trimmed); $resulthtml = array(); for ($ihtml = 2, $sizehtml = count($arrhtml); $ihtml < ($sizehtml - 1); $ihtml++) { $resulthtml[] = $arrhtml[$ihtml]; } return $resulthtml; } $clean = implode("\n", striphtml($trimmed)); ?> |
1 2 3 4 5 6 7 | function striphtml($trimmed) { return array_slice(explode("\n", $trimmed), 2); } $clean = implode("\n", striphtml($trimmed)); ?> |
1 2 3 4 5 6 | if(preg_match('/([01]?[0-9]|2[0-4]):[0-5][0-9]/', $string, $m)) { $time = $m[0]; } else { // geen tijd gevonden } |
Ja dat bedacht ik me ook toen ik de vreemde resultaten zagquote:Op maandag 27 juli 2009 23:33 schreef SuperRembo het volgende:
[..]
Ja dan vraag je ook wel om problemen eigenlijk
Altijd eerst berekeningen uitvoeren, en pas op het allerlaatst omzetten naar tekst.
1 2 3 4 5 6 7 | 0 - 55 - 15 - 1 0 - 55 - 25 - 2 0 - 55 - 35 - 3 0 - 55 - 45 - 4 0 - 55 - 55 - 5 1 - 55 - 35 - 7 |
1 2 3 4 5 6 | 0 - 55 - 25 - 2 0 - 55 - 45 - 4 0 - 55 - 55 - 5 1 - 55 - 35 - 7 |
1 2 3 4 5 6 7 8 | FROM testtabel WHERE confectie_id = '" . substr($_POST['test'], 1, strlen($_POST['maat']) -1) . "' AND (user_id = '" . $_POST['user'] . "' OR user_id = '0') AND nummer IN ('" . implode("','", array_keys($noemers)) . "') GROUP BY user_id, nummer ORDER BY user_id |
Die voor de tijd werkt voortreffelijk! Wat gebeurd er trouwens als er 2 keer een tijdvermelding in staat? Net getest, dan geeft hij de eerst gevonden tijd door. Maar dit kan geen fouten veroorzaken?quote:Op dinsdag 28 juli 2009 07:21 schreef Roönaän het volgende:
Bizar die newline code.
[ code verwijderd ]
Kan toch gewoon als
[ code verwijderd ]
Raar ook dat een striphtml geen tags weghaald of iets anders html gerelateerds doet.
Voor de tijd:
[ code verwijderd ]
Daar moet hij de eerste twee regels en de laatste regel verwijderen.quote:charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
Inhoud mailtje
----NextPart_048F8BC8A2197DE2036A
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 | if (stripos($headers, "boundary=") !== false) { $splitplain = explode("Content-Type: text/plain;", $message); $splithtml = explode("Content-Type: text/html;", $splitplain[1]); $trimmed = trim($splithtml[0]); function striphtml($trimmed) { $arrhtml = explode("\n", $trimmed); $resulthtml = array(); for ($ihtml = 2, $sizehtml = count($arrhtml); $ihtml < ($sizehtml - 1); $ihtml++) { $resulthtml[] = $arrhtml[$ihtml]; } return $resulthtml; } $clean = implode("\n", striphtml($trimmed)); } else { $clean = $message; } $body = trim(str_replace(array("=\n", "=20", "=3D"), array("", "", "="), $clean)); ?> |
(-1 toegevoegd)quote:function striphtml($trimmed) {
return array_slice(explode("\n", $trimmed), 2, -1);
}
$clean = implode("\n", striphtml($trimmed));
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | if (stripos($headers, "boundary=") !== false) { $splitplain = explode("Content-Type: text/plain;", $message); $splithtml = explode("Content-Type: text/html;", $splitplain[1]); $trimmed = trim($splithtml[0]); $slicedmail = array_slice(explode("\n", $trimmed), 2, -1); $clean = implode("\n", $slicedmail); } else { $clean = $message; } $body = trim(str_replace(array("=\n", "=20", "=3D"), array("", "", "="), $clean)); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | if (stripos($headers, "boundary=") !== false) { $splitplain = explode("Content-Type: text/plain;", $message); $splithtml = explode("Content-Type: text/html;", $splitplain[1]); $slicedmail = array_slice(explode("\n", trim($splithtml[0])), 2, -1); $clean = implode("\n", $slicedmail); } else { $clean = $message; } $body = trim(str_replace(array("=\n", "=20", "=3D"), array("", "", "="), $clean)); ?> |
Je moet het zien als dat er allemaal vaste gegevens zijn per top_id/nummer, als een gebruiker een van deze gegevens aanpast wil ik alle 'vaste' gegevens die niet veranderd zijn maar ook de gegevens die wel veranderd zijn. En na dit alles wil ik de veranderde gegevens met het zelfde nummer (top_id/nummer) overschrijven over de top_id/nummer van gebruiker 0, zodat deze wegvalt.quote:Op woensdag 29 juli 2009 18:42 schreef Roönaän het volgende:
Wat is "gebruiker 0", zijn dat je default setting oid?
1 2 3 4 5 6 | 1 - 10 - 1 - 101 0 - 10 - 2 - 100 0 - 10 - 3 - 100 0 - 10 - 4 - 100 1 - 10 - 4 - 99 |
1 2 3 4 | 0 - 10 - 2 - 100 0 - 10 - 3 - 100 1 - 10 - 4 - 99 |
1 2 3 | preg_match('/([01]?[0-9]|2[0-4]):[0-5][0-9]/', $string, $m) ?> |
Dat is helemaal nieuw voor mij, wel even slikken.quote:Op vrijdag 31 juli 2009 01:06 schreef GlowMouse het volgende:
Ja hoor, dat is mogelijk. Zie http://nl3.php.net/manual/en/reference.pcre.pattern.syntax.php
1 2 3 | preg_match('/\s([01]?[0-9]|2[0-4]):[0-5][0-9]\s/', $body, $m); ?> |
Moet je even $m[1] gebruiken ipv $m[0].quote:Op vrijdag 31 juli 2009 01:24 schreef F4T4L_3RR0R het volgende:
[..]
Dat is helemaal nieuw voor mij, wel even slikken.
De verplichte spatie heb ik nu zo gedaan:
[ code verwijderd ]
Edit: maar dan neemt hij de spaties wel mee in $m.
Nu nog even uitzoeken hoe ik de : toe kan voegen als verplichting (als er geen spatie staat) aan het einde van de tijd.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |