Hoe is dit idee eigenlijk? ik begrijp de code half, je wil als er 3 seconde niks gebeurt iets verstuurt?quote:Op dinsdag 9 oktober 2012 10:07 schreef mstx het volgende:
[..]
[..]
Ik doe zoiets meestal met een timeout, dus dit idee:
[ code verwijderd ]
Dan stuurt hij max. elke 3 seconden iets naar je server.
1 | <input type='text' name='field_name' value='' onchange="Update_field_table($rownumber,$value);" /> |
1 2 3 4 5 6 7 8 | function Update_field_table(rownumber,waarde) { //irrelevant hieronder. $.post{ waarde : waarde, rownumber : rownumber } } |
1 2 3 4 5 | var timeout=null; function onkeyupfunctie(){ if (timeout!=null) clearTimeout(timeout); setTimeout("functieDieAjaxVerstuurt()", 3000); } |
Ja volgens mij snap je het wel zo'n beetje.quote:Op dinsdag 9 oktober 2012 16:00 schreef cablegunmaster het volgende:
[..]
Hoe is dit idee eigenlijk? ik begrijp de code half, je wil als er 3 seconde niks gebeurt iets verstuurt?
Want ik heb nu
[ code verwijderd ]
Daarbij gebruik ik een stukje javascript:
[ code verwijderd ]
Hoe wou je daartussen dan de timeout neerzetten? want dan was je idee dat hij elke keer de timeout cleared onchange? en pas na 3 seconde submit. onchange submitten heb ik al onder de knie, alleen hoe was je idee met de 3 seconde timeout? dat hij pas na 3 seconde na de onchange aanpast? Ideaal eigenlijk als er geen change meer plaatsvind. dus 2 seconde na laatste change.![]()
Ontleed:
Trigger: Als een key up wordt gedrukt laad hij deze functie.
Als er 3 seconde geen knop boven is gedrukt verstuurd hij het richting de server ( aanroep functieDieAjax); als ik het begrijp?anders timeout leegmaken.
[ code verwijderd ]
http://nl1.php.net/nl2br die functie nodig? (ik weet even niet waarom je die harde return niet wilt hebbenquote:Op woensdag 10 oktober 2012 22:31 schreef MrNiles het volgende:
ik heb een tekst invul form, de tekst schrijf ik wel in een txt file
als ik in de tekstarea een harde return geef dan komt deze ook in de txt file terecht.
Als ik de textfile uitlees dan zie ik die harde return ook weer terug op het scherm...da's nie de bedoeling
hoe krijg ik de harde return eruit?
trim lijkt niet te werken
ik wil de harde return niet in mijn txt file terug zien als harde return maar alleen als <br/>quote:Op woensdag 10 oktober 2012 22:33 schreef mschol het volgende:
[..]
http://nl1.php.net/nl2br die functie nodig? (ik weet even niet waarom je die harde return niet wilt hebben)
Dat is precies wat nl2br() doet.quote:Op woensdag 10 oktober 2012 22:37 schreef MrNiles het volgende:
[..]
ik wil de harde return niet in mijn txt file terug zien als harde return maar alleen als <br/>
ow..ok..ff proberen danquote:
Een carriage return is het '\r' symbool. Het 'ga naar de volgende regel' symbool is de newline '\n'.quote:Op woensdag 10 oktober 2012 22:40 schreef MrNiles het volgende:
[..]
ow..ok..ff proberen dan
kwam er net achter dat een harde return een carriage return heet...dat zoekt een stuk makkelijker
kwam op deze oplossing
$bericht= trim( preg_replace( '/\s+/', ' ', $bericht) );
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?php // Telefoonnummer controle $henk = "+3107365252"; // OK $henk = "2355929253"; // OK $henk = "+352329523" // OK $henk = "035ABC"; // FOUT $henk = "+35235a"; // FOUT if ( preg_match ( "/^\+?\d+$/", $henk ) ) { echo "OK"; } else { echo "FOUT"; } ?> |
zoiets?"quote:Op woensdag 10 oktober 2012 23:13 schreef wobbel het volgende:
Help, wat doe ik weer eens foutIk krijg bij huidige waarde van $henk fout terug
Ik wil nummers en + toestaan (voor telefoonnummers met of zonder + ervoor)
[ code verwijderd ]
1 2 3 4 5 | if (preg_match('/^\+?\d{1,10}$|\d{1,10}$/i', $subject)) { # Successful match } else { # Match attempt failed } |
Het gaat met name om de snelheid van de regex aangezien de regex vele tienduizenden keren per dag uitgevoerd gaat worden.quote:Op woensdag 10 oktober 2012 23:21 schreef mschol het volgende:
[..]
zoiets?"
[ code verwijderd ]
zal vast niet het meest efficientst zijn(gezien ik geen regex held ben het even met regexbuddy in elkaar geknutseld..)
voor optimalisatie moet je niet bij mij zijnquote:Op woensdag 10 oktober 2012 23:26 schreef wobbel het volgende:
[..]
Het gaat met name om de snelheid van de regex aangezien de regex vele tienduizenden keren per dag uitgevoerd gaat worden.
En volgens mij is 0-9 toch echt handiger dan 1-10
Ah, ik snap dus al niks van regexenquote:Op woensdag 10 oktober 2012 23:27 schreef mschol het volgende:
[..]
voor optimalisatie moet je niet bij mij zijn![]()
en 0-9? lijkt me erg onhandig, je eerste voorbeeld matcht hij dan al niet...
1-10 is vanaf 1 cijfer tot max 10 cijfers...
Is filter_var() dan geen oplossing?quote:Op woensdag 10 oktober 2012 23:13 schreef wobbel het volgende:
Ik wil nummers en + toestaan (voor telefoonnummers met of zonder + ervoor)
1 2 3 | <?php echo filter_var('+1234henk-5678aaa', FILTER_SANITIZE_NUMBER_FLOAT); ?> |
1 | +1234-5678 |
Mja, eerst trimmen voordat je hem door de filter haalt. Slikt ie in ieder geval spaties.quote:Op donderdag 11 oktober 2012 00:30 schreef KomtTijd... het volgende:
Wat Tijn zegt, of FILTER_VALIDATE_FLOAT, die geeft true of false terug. (misschien iets te stikt voor telefoonnummers, als je ook streepjes of spaties wilt toestaan)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | var timeout=null; function update_voucher(rownumber,waarde){ var rownumber = rownumber; var waarde = waarde; if (timeout!=null) clearTimeout(timeout); setTimeout(function(){ functieVoucherVerstuurd(rownumber,waarde); }, 2000); } function functieVoucherVerstuurd(rownumber,waarde) { var value = $("."+waarde).val(); $.post("/cms/voucher/blablabla/", { id : rownumber, value : value, field : waarde, post_ajax : "true" }, function(data){ alert(waarde+" veld is geupdate met: "+value); }); } |
1 | var value = $("."+waarde).val(); |
Idee is eigenlijk dat hij zichzelf vind, dus met behulp van onchange eigenlijk weet dat hij Input te pakken heeft de huidige rij te pakken heeft. ik zat me net te bedenken is het dan slim om elke rij een eigen nummer id mee te geven , op basis van de ID in de DB? zo van:quote:Op donderdag 11 oktober 2012 16:20 schreef GlowMouse het volgende:
Kijk eens naar de jQuery-documentatie over traversing. Je laat niet zien hoe de functie wordt aangeroepen, maar vanaf $(this) is de rij waarschijnlijk niet ver in de dom-tree.
1 2 3 4 5 | <?php <tr id='voucher-500' > <td><input name='datum' value='2012-01-01' onchange="update_voucher('500','datum');" /></td> <tr> ?> |
dankje voor het idee, even kijken of ik het toegepast krijgquote:
Ben nu bezig met een php project waar alle functienamen en variabelen in het Spaans zijnquote:Op donderdag 11 oktober 2012 16:12 schreef KomtTijd... het volgende:
Als je al nederlandse functienamen gebruikt, maak ze dan op zijn minst grammaticaal correct
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |