Thanks!quote:Op donderdag 16 juli 2009 20:37 schreef Swetsenegger het volgende:
[ code verwijderd ]
En beginners vragen zijn prima, maar je probeert blijkbaar niets zelf.
Dat kan niet. Heb je het wel volledig overgetikt?quote:Op donderdag 16 juli 2009 21:50 schreef F4T4L_3RR0R het volgende:
[..]
Thanks!
Ja ik wist dus niet wat empty was.![]()
Het probleem is nu dat hij maar een nummer in $nummer zet als beide IF's waar zijn.
Heb de .= over het hoofd gezien.quote:Op donderdag 16 juli 2009 22:06 schreef Swetsenegger het volgende:
[..]
Dat kan niet. Heb je het wel volledig overgetikt?
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | if (stripos($melding, "UTRECHT") !== false) { $nummer = "123"; } if (stripos($melding, "") !== false) { $nummer .= "456"; } if (stripos($melding, "ROTTERDAM") !== false) { $nummer .= "789"; } if (!empty($nummer)) { require_once("sendsms.php"); } ?> |
*kuch* niet om andere je werk te laten doen en zelf niks proberen *kuch*quote:Op donderdag 16 juli 2009 20:06 schreef F4T4L_3RR0R het volgende:
[..]
*kuch* Dit is een topic voor beginners(vragen).
Precies,quote:Op donderdag 16 juli 2009 22:26 schreef GlowMouse het volgende:
Waarom probeer je het niet gewoon uit?
Dat require/require_once wil ik niet teveel mee testen, kostte me al stuk of 50 smsjes vanavond... (ja ik kan ook een testscript maken wat aangeroepen moet worden, maar dan gaat daar weer alle tijd in zitten)quote:Op donderdag 16 juli 2009 22:26 schreef GlowMouse het volgende:
Waarom probeer je het niet gewoon uit?
quote:Op donderdag 16 juli 2009 22:38 schreef F4T4L_3RR0R het volgende:
[..]
Dat require/require_once wil ik niet teveel mee testen, kostte me al stuk of 50 smsjes vanavond... (ja ik kan ook een testscript maken wat aangeroepen moet worden, maar dan gaat daar weer alle tijd in zitten)
| 1 2 3 4 5 6 | <head> </head> <body onload="alert('<?=$nummer;?>')"> </body> </html> |
de . (punt) doet niets anders dan 2 dingen aan elkaar knopenquote:Dat van waar ik .= mag neerzetten is voor elke situatie anders. Weet dus niet of het in mijn situatie ook op alle plekken kan.
Als je nu in mijn voorbeeld tussen 12 en 34 een , wil... wat zou je dan moeten doen?quote:En dat toevoegen van een komma als er meer dan 1 nummer in $nummer staat, geen idee waar ik moet zoeken.
| 1 2 3 4 5 | $ding .= '34'; $ding .= '56'; echo $ding --> 123456 |
| 1 2 3 4 5 | $ding .= '34'; $ding .= '56'; echo $ding --> 123456 |
| 1 2 3 4 | $ding .= '56'; echo $ding --> 3456 |
http://nl2.php.net/requirequote:Op donderdag 16 juli 2009 23:09 schreef F4T4L_3RR0R het volgende:
[ code verwijderd ]
Maar wat gebeurd er als ik dit doe:
[ code verwijderd ]
Want als de eerste IF niet waar is, krijg je ook een .= in de eerste $ding:
[ code verwijderd ]
Als ik require_once vervang voor require werkt het ook. Require_once is toch niet nodig of juist wel?
Mijn computer niet nee, maar wil niet dat de VPS waarop ik alles moet draaien op tilt slaat.quote:Op vrijdag 17 juli 2009 01:11 schreef WyriHaximus het volgende:
[..]
http://nl2.php.net/require
http://nl2.php.net/require_once
En die eerste kan je gewoon uitproberen je computer ontploft er niet van.
| 1 2 3 4 5 6 7 8 9 10 | $nummer .= "0611111111"; $nummer .= "0622222222"; $nummer .= "0633333333"; $nummer .= "0644444444"; echo $nummer; ?> |
Snap eingelijk niet waarom je een include/require gebruikt voor 1 script maar goed. Punt is dat includes een beetje resources kosten. include_once kost aardig meer omdat de engine moet controlleren of het bestand al een keer geinclude is. require(_once) is waar een tikje erger omdat deze een fatal error trowt als het fout gaat. Wat je je zelf nu moet gaan bedenken of het verstandig is om steeds je verstuur script te includen tegen over wat er in dat bestand staat gewoon in je main script te zetten. Over je meerdere nummers en .= vraag kijk eens naar deze pagina's misschien kom je op een goed ideequote:Op vrijdag 17 juli 2009 01:15 schreef F4T4L_3RR0R het volgende:
[..]
Mijn computer niet nee, maar wil niet dat de VPS waarop ik alles moet draaien op tilt slaat.
Er zit geen require voor of na, dus hoef ik denk ik geen require_once te gebruiken?
Ik zit nog even te stuntelen met het volgende:
[ code verwijderd ]
Ik wil achter elk nummer (in echo $nummer) een komma hebben, behalve als er maar 1 nummer staat (het aantal nummers wordt bepaald door een IF). De volgorde van de nummer varieert ook.
Ok dan is het logish om het te includen anders word je script ook een zooitjequote:Op vrijdag 17 juli 2009 01:29 schreef F4T4L_3RR0R het volgende:
Het te includen bestand is een SMS API van een SMS-gateway, deze included op zijn buurt weer een class...
Ik ga even aan de slag met de documentatie.
Nee, require is een tikje erger omdat die uitgevoerd wordt vóórdat je code wordt uitgevoerd. In een if is een include dus 'beter' omdat het in sommige gevallen het inlezen van een bestand scheelt.quote:Op vrijdag 17 juli 2009 01:23 schreef WyriHaximus het volgende:
[..]
require(_once) is waar een tikje erger omdat deze een fatal error trowt als het fout gaat.
True truequote:Op vrijdag 17 juli 2009 01:33 schreef GlowMouse het volgende:
[..]
Nee, require is een tikje erger omdat die uitgevoerd wordt vóórdat je code wordt uitgevoerd. In een if is een include dus 'beter' omdat het in sommige gevallen het inlezen van een bestand scheelt.
quote:Op vrijdag 17 juli 2009 02:04 schreef F4T4L_3RR0R het volgende:
Dus, kan ik voor mijn toepassing gewoon include/require gebruiken in plaats van require_once? Niet dat ik iets over het hoofd heb gezien wat gekke dingen kan doen in bepaalde situaties.
Dat zal al een zorg bij me wegnemen.
WyriHaximus:
Ik denk dat je bedoeld dat ik de strings in een array zet (als deze uit meer dan 1 bestaat) om deze vervolgens weer te imploden?
Goh.quote:Op vrijdag 17 juli 2009 03:46 schreef F4T4L_3RR0R het volgende:
Als ik $nummer in een array zet, danplakthijnogallesaanelkaar.
| 1 2 3 4 5 6 7 8 9 10 11 | $nummer .= "0611111111"; $nummer .= "0622222222"; $nummer .= "0633333333"; $nummer .= "0644444444"; $array = str_split($nummer, 10); $nummer = implode(", ", $array); echo $nummer; ?> |
| 1 2 3 4 5 6 7 8 9 10 11 | $nummer .= "0611111111"; $nummer .= "0622222222"; $nummer .= "0633333333"; $nummer .= "0644444444"; $array = str_split($nummer, 10); $nummers = implode(", ", $array); echo $nummers; ?> |
Beetje onlogische constructie trouwens, dat hij zooi in $nummer aan elkaar plakt als string, maargoed:quote:Op vrijdag 17 juli 2009 04:13 schreef F4T4L_3RR0R het volgende:
THANKS!!!
Tellen en zo is niet nodig met het volgende:
[ code verwijderd ]
Vraag me alleen af of $nummer er niet te vaak in staan, misschien kan ik dit beter veranderen in:
[ code verwijderd ]
Of maakt het niets uit?
| 1 2 3 4 5 6 7 8 9 10 | $nummer = ""; // wel definieren alvast, wel zo netjes en anders kun je daar later problemen mee krijgen $nummer .= "0611111111"; $nummer .= "0622222222"; $nummer .= "0633333333"; $nummer .= "0644444444"; echo implode(", ", str_split($nummer, 10)); // geen overbodige variabelen gebruiken die je prima kan ontwijken door zooi te nesten (uitzonderingen daargelaten) ?> |
| 1 |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | $nummer = ""; if ( stripos($melding, "UTRECHT") !== false ) { $nummer .= "0611111111"; } if ( stripos($melding, "ROTTERDAM") !== false ) { $nummer .= "0622222222"; } if (!empty($nummer)) { $nummers = implode(", ", str_split($nummer, 10)); $onderwerp = "SMS ONDERWERP"; include("sendsms.php"); } ?> |
| 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 | $nummer = ""; if (stripos($body, "0701234") !== false) { $onderwerp = "ONDERWERP EEN"; if ( stripos($melding, "AMSTERDAM") !== false ) { $nummer .= "0611111111"; } } else { $onderwerp = "ONDERWERP TWEE"; if ( stripos($melding, "ROTTERDAM") !== false ) { $nummer .= "0622222222"; } if ( stripos($melding, "UTRECHT") !== false ) { $nummer .= "0633333333"; } } if (!empty($nummer)) { $nummers = implode(", ", str_split($nummer, 10)); include("sendsms.php"); } ?> |
| 1 2 3 4 5 6 7 8 | $nummers = array(); #array_push() $nummers[] = "1234"; $nummers = join(", ", $nummers); ?> |
Ik tel geen extra regelquote:Op vrijdag 17 juli 2009 09:20 schreef F4T4L_3RR0R het volgende:
Dat zijn al 4 regels code tegenover 1 regel in mijn 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 | $nummers = array(); if (stripos($body, "0701234") !== false) { $onderwerp = "ONDERWERP EEN"; if ( stripos($melding, "AMSTERDAM") !== false ) { $nummers[] = "0611111111"; } } else { $onderwerp = "ONDERWERP TWEE"; if ( stripos($melding, "ROTTERDAM") !== false ) { $nummers[] = "0622222222"; } if ( stripos($melding, "UTRECHT") !== false ) { $nummers[] = "0633333333"; } } if (!empty($nummer)) { $nummers = join(", ", $nummers); include("sendsms.php"); } ?> |
Waarom vervang je dan niet het versturen van de SMS met een platte debug tekst?quote:Op donderdag 16 juli 2009 22:38 schreef F4T4L_3RR0R het volgende:
[..]
Dat require/require_once wil ik niet teveel mee testen, kostte me al stuk of 50 smsjes vanavond... (ja ik kan ook een testscript maken wat aangeroepen moet worden, maar dan gaat daar weer alle tijd in zitten).
Owja? Die array_push ipv strings concatten om vervolgens geen split te hoeven doen op elk 10 karakter (wat dus problemen gaat geven als je plots ook met buitenlandse nummers zou gaan werken enzo). Dat heb ik nu niet, aangezien ik gewoon direct een array gebruik en daar de nummers inprop.quote:Op vrijdag 17 juli 2009 09:20 schreef F4T4L_3RR0R het volgende:
Dat zijn al 4 regels code tegenover 1 regel in mijn script.
quote:Op vrijdag 17 juli 2009 12:11 schreef slacker_nl het volgende:
[..]
Owja? Die array_push ipv strings concatten om vervolgens geen split te hoeven doen op elk 10 karakter (wat dus problemen gaat geven als je plots ook met buitenlandse nummers zou gaan werken enzo). Dat heb ik nu niet, aangezien ik gewoon direct een array gebruik en daar de nummers inprop.
@swets:
if (!empty($nummers)) ipv $nummer
quote:Op vrijdag 17 juli 2009 11:55 schreef Swetsenegger het volgende:
[..]nou ja, die 's' vind ie zelf wel.... toch.
| 1 2 3 4 5 6 | if (!empty($nummer)) { $nummers = join(", ", $nummer); include("sendsms.php"); } ?> |
| 1 2 3 4 5 6 | $nummer = "0611111111"; $nummer = "0622222222"; $nummer = "0633333333"; $nummer = "0644444444"; ?> |
| 1 |
quote:Op donderdag 16 juli 2009 22:26 schreef GlowMouse het volgende:
Waarom probeer je het niet gewoon uit?
| 1 |
| 1 |
Ik zou die laatste gebruiken, omdat het anders wat onoverzichtelijk wordt wat '$nummer' precies is.quote:Op vrijdag 17 juli 2009 19:10 schreef F4T4L_3RR0R het volgende:
Jaaaaaa, werkt. (veel beter ook!)
Ik heb trouwens "implode" gebruikt in plaats van "join". Dit omdat ik meerdere keren "implode" in het script gebruik en het anders voor verwarring kan zorgen.
Maak het trouwens uit als ik:
[ code verwijderd ]
Of
[ code verwijderd ]
Gebruik? Is het ene veiliger of beter dan het andere? Het werkt in ieder geval allebei.
| Forum Opties | |
|---|---|
| Forumhop: | |
| Hop naar: | |