javascript url validation..

Gestart doorOne2xs16 reacties17 weergaven

17 berichten · pagina 1 van 2

One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Hoi,

ik heb een textarea, en ik wil dat als je er tekst in zet, en die tekst bevat een link, dat hij die link vervangt door bijvoorbeeld short.me/17382 (mijn eigen url shortener) (dus ook een (ajax) request naar een php functie)

hoe is dit mogelijk?

heb al verschillende regex shit geprobeerd, lukt allemaal niet sadley
toevoeging op 22 november 2012, 11:07:42:
dus zoals tweetdeck, je typt een link en als je klaar bent met die link en je drukt op spatie, dat het een verkorte url wordt.
0
Berichten
6.201
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Kan je hier niet het een en ander uithalen en ombouwen naar je eigen url shortener?
0
One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Kjeld schreef:
Kan je hier niet het een en ander uithalen en ombouwen naar je eigen url shortener?
Notice: Undefined variable: morethanlen in /home/ajaxapp/public_html/tw/shortenurl.php on line 47 Notice: Undefined index: http://www.goog in /home/ajaxapp/public_html/tw/shortenurl.php on line 83 hoi.. http://www.goog

ik krijg een paar errors al daar emodenk dat het nogal verouderd is etc

toevoeging op 22 november 2012, 11:47:47:
22/3/2009 sadley
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Die doet het met PHP, daar komt geen javascript aan te pas zo te zien.
0
One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
met php is ook goed.. zo was ik er net bijna

alleen als je gewoon met (mijn tempo bijv.) typt.. dan is een ajax request te sloom..
wat ik deed was
bij onkeyup alles versturen naar een functie, de hele input en dan een request maken met ajax, en dan kijken of er in dat hele zooitje een url stond en deze dan replacen en terug sturen naar de functie en die zet de hele kwak opnieuw in textarea, en als je tussen die tijd iets typt, is dat allemaal weg..
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
PHP (of een andere serverside programmeertaal) is onvermijdelijk. Je moet ergens de vertaalslag maken om jouw ingevoerde URL door een serversidescript om te laten zetten.

Ik zou zeggen door de URLs met JS (vraag me even niet hoe) te extraheren, en in dat geval een AJAX-call doen om de URL door een script te shortenen, en de nieuwe URl terug te geven, en de huidige URL te replacen.
0
One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Ja..
Zoiets zat ik al aan te denken..
maar dan moet ik dus
1) een javascript iets hebben om alle urls eruit te vissen
2) een ajax call maken met een php functie die precies zoals die js functie werkt en dezelfde urls eruit haalt
3) die php functie uitkomst terug sturen en in javascript replacen..

en dat allemaal terwijl je aan het typen bent..

Wie weet er hier hoe je dan met javascript kijkt of er links in staan?

ik had wel iets getoverd, maar dan gaf hij al aan dat het een url was als je http:// typte met nog 1 letter erachter.. dan begon hij al te replacen..
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Nee, bij elke karakterinvoer doe je een request naar je server. Je stuurt de gehele invoer mee. Als je daar een geldige URL vindt (dat check je dus met PHP), gevolgd door een niet-geldig karakter (dus "www.google.nl " met de spatie erachter, anders kan het zijn dat je nog bezig bent om "www.google.nl/efww" te typen) dan haal je die URL eruit. Die URL zet je om naar http://sho.rt/1isdi of weetikwat, en je geeft deze array terug:
array(www.google.nl => http://sho.rt/1isdi)
vervolgens vervang je met javascript alle www.google.nl door die sho.rt link.

Het vervangen zelf duurt niet lang dus dat heeft de gebruiker niet door, en op de ajax request hoeft hij niet te wachten.
0
One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
oeh.. ja.. nice biggrinthanks biggrin
toevoeging op 22 november 2012, 13:36:31:
Bedankt Lennard, het heeft gewerkt smile
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ik zou het niet met PHP checken, maar met JS en als er urls zijn pas resuest doen
0
Berichten
6.485
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Antonn schreef:
Ik zou het niet met PHP checken, maar met JS en als er urls zijn pas resuest doen
Dat doet hij ook?
0
One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Rogier schreef:
Eerdere citaten tonen
Antonn schreef:
Ik zou het niet met PHP checken, maar met JS en als er urls zijn pas resuest doen
Dat doet hij ook?
jep.
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Rogier schreef:
Eerdere citaten tonen
Antonn schreef:
Ik zou het niet met PHP checken, maar met JS en als er urls zijn pas resuest doen
Dat doet hij ook?
Lennard schreef:
Nee, bij elke karakterinvoer doe je een request naar je server. Je stuurt de gehele invoer mee.
0
Berichten
6.485
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Xjessex schreef:
Eerdere citaten tonen
Rogier schreef:
Eerdere citaten tonen
Antonn schreef:
Ik zou het niet met PHP checken, maar met JS en als er urls zijn pas resuest doen
Dat doet hij ook?
jep.
Anders was het wel een enorme omweg yummie
Overigens moet je wel rekening houden met de ctrlc+v mensen. Wat ik misschien zou doen is niet met on keyup werken, maar elke 2 seconden de tekst controleren de urls. Lijkt me ook minder zwaar.
0
One2xs

Bot · Topicstarter

Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
ik doe onkeyup en down.. en dan zodra er een spatie is geplaatst zet hij de url om : )
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren