Uitvoeren van http commando vanuit een button

Status
Niet open voor verdere reacties.

pelikano

Gebruiker
Lid geworden
30 sep 2009
Berichten
195
Ik heb op het forum gezocht naar een oplossing van mijn probleem maar kom het niet tegen.

Ik heb een http commando(http://mijn.host.com/axis-cgi/io/virtualinput.cgi?action=6:/) die ik graag onder een knop plaats. Dat lukt nog wel maar ik wil dat het commando op de achtergrond uitgevoerd wordt.

Heeft iemand voor mij een stukje script die dit kunstje uitvoert?
Zelf heb ik het volgende gevonden maar weet niet hoe dit samen te voegen.
Code:
<html>
<head>
<script type="text/javascript">
function disp_alert()
{
alert("Hello again! This is how we" + '\n' + "add line breaks to an alert box!");
}
</script>
</head>
<body>

<input type="button" onclick="disp_alert()" value="Display alert box" />

</body>
</html>
 
Gebruik javascript. De code die je hierboven geeft is niet geschikt voor het openen van een link.
Als je niet weet hoe javascript werkt kijk dan hier. Op deze site staat alles heel eenvoudig uitgelegd.
 
Hoi Marbie94,
ik weet niet veel van programmeren maar mijn voorbeeld code is toch JavaScript...? En de voorbeeld code komt van http://www.w3schools.com/js/js_popup.asp ....
Dezelfde site waar het allemaal eenvoudig uitgelegd staat :confused: Maar ik krijg het niet voor elkaar :o

Het maakt mij niet uit of de code AJAX, PHP, HTML is, als het maar werkt...:cool:
 
Inmiddels weer een stap verder. Dit functioneert maar opent een nieuw scherm en wordt niet afgesloten. Is er niet een "voer uit op de achtergrond" oplossing?

Code:
<A HREF="http://mijn.host.com/axis-cgi/io/virtualinput.cgi?action=6:/"
onClick="alert('picture is in archive!!!')";target="_blank">Take a picture!!!</A>
 
Hoi pelikano,
Ik kwam deze tegen, en dat zou iets betekenen als:
HTML:
...
<form action="http://mijn.host.com/axis-cgi/io/virtualinput.cgi?action=6:/">
   <input type="submit" value="Take a picture!!!" onclick="alert('picture is in archive!!!'); return true" />
</form>
...
Geen garanties: ik weet geen cent van cgi, dus dit moet maar gecorrigeerd worden door een forummer die er verstand van heeft. ;)

Met vriendelijke groet,
CSShunter
_________
PS: Staat er bij Axis niets op de site (bv. zoiets)?
 
Thx CssHunter,
ik heb het uitgeprobeerd maar de "action" in regel conflicteert met elkaar waardoor de laatste action niet als commando uitgevoerd wordt. Maar je brengt mij wel op het idee om de regel in een cgi bestand te zetten en dat bestand aan te roepen. Ga ik nog uitzoeken.
Wat betreft de AXIS site, daar is deze feature niet gedocumenteerd.
 
Hallo,


'Op de achtergrond' kan alleen via het (zoals Supersnail) al zei, met XHR (of als je van woorden als 'web 2.0' houd, AJAX).

[JS]function klikje()
{
var xhr = new XMLHttpRequest();

xhr.overrideMimeType('text/plain');

xhr.open('get', 'http://mijn.host.com/axis-cgi/io/virtualinput.cgi?action=6:/', false);

// normaal gesproken hier een event listener voor de response
// maar je wilt het 'in de background', dus is het niet nodig.

xhr.send();
}[/JS]

HTML:
<a onclick='klikje();'>klik</a>
 
ik heb geprobeerd maar krijg het niet werkend. Op de website(Concrete5) voeg ik een html widget toe waar ik de code in kan zetten. Ik heb nog wat TAGs erbij gezet volgens andere voorbeelden maar kennelijk doe ik nog iets niet goed. Het ziet er nu zo uit;

Code:
<html>
<head>
<script language="javascript" type="text/javascript"> 
function klikje()
{
   var xhr = new XMLHttpRequest();
 
   xhr.overrideMimeType('text/plain');
 
   xhr.open('get', 'http://strandheuvelrouter.dhis.org/axis-cgi/io/virtualinput.cgi?action=6:/', false);
 
   // normaal gesproken hier een event listener voor de response
   // maar je wilt het 'in de background', dus is het niet nodig.
 
   xhr.send();

</script>
</head>
<body>
<a onclick='klikje();'>klik</a>
</body>
</html>
 
Er mist een } aan het eind van de functie, probeer dit:

HTML:
<!doctype html>

<html>
<head>
<script> 
function klikje()
{
   var xhr = new XMLHttpRequest();
 
   xhr.overrideMimeType('text/plain');
 
   xhr.open('get', 'http://strandheuvelrouter.dhis.org/axis-cgi/io/virtualinput.cgi?action=6:/', false);
 
   // normaal gesproken hier een event listener voor de response
   // maar je wilt het 'in de background', dus is het niet nodig.
 
   xhr.send();

}   // <-- deze miste!
</script>
</head>
<body>
<a onclick='klikje();'>klik</a>
</body>
</html>

overigens kan je eens (in firefox of chrome) op ctrl+shift+J drukken (onderste = nieuwste fout) om een fouten-console te zien, bij jou code zou er dan iets gestaan hebben als "Missing } after function body" of "unexpected end, missing } after function".
 
Laatst bewerkt:
Wat stom, ik was vannacht wel met de Chr. Java console aan het stoeien maar kon geen foutmeldingen vinden. Bedankt voor de tips.
Maar het werkt! Heel erg bedankt, ik ga het vanavond opleuken en op de plek zetten.
 
Euh, voetnootje!
Is <script language="javascript"> niet een klein beetje al 15 jaar deprecated (vanaf de Working Draft van html4.0)?
En zijn de browsers die dat indertijd nodig hadden, niet al jarenlang aan het rondzwalken op de eeuwige jachtvelden?
:P
__________
Daar slaat de javascript-console niet op aan, maar wel de html-validator. :)
 
De code is geplaatst en het werkt. Kijk voor het resultaat op http://breskens.strandheuvel.com (Take this picture to archive)

@csshunter Bedankt voor de tip, mijn aanpak is altijd in 3 stappen; 1 functionaliteit(het moet functioneren), 2 kwantiteit(het moet overeind blijven), 3 kwaliteit(het kan altijd mooier) Voorlopig heb ik stap 1 en 2 genomen.
Als ik de validator over de site haal vindt hij tientallen "fouten". maar kennelijk negeren de browsers deze.

Allemaal bedankt(speciaal That Guy) voor de bijdrage aan dit projectje.
 
Euh, voetnootje!
Oe! En ik het toch zomaar schaamteloos kopieren ;) *edited


maar kennelijk negeren de browsers deze.

Well, ze negeren het niet echt... Als een browser een fout tegenkomen zal 'ie niet gelijk moord en brand schreeuwen (dat zou een nogal vervelend surfen; 9 van de 10 websites is niet 'valide'), maar proberen over de fout heen te lezen en het zelf te corrigeren. Het is dus niet het einde van de wereld als je site niet valide is... maar toch zou ik even een uurtje nemen om de laatste errors eruit te halen! Op het moment geeft 'ie 120 Errors, maar 90% daarvan is op te lossen door de ampersands ( & ) in je URLs te veranderen naar de HTML entity ( &amp; ) en je DOCtype goed te zetten (OF XHTML 1.1, OF html5, niet allebij tegelijkertijd!)




Oh, ik neem aan dat je zojuis (16:17) bezig bent gegaan met je site, want ik krijg zojuist dit op m'n scherm:

An unexpected error occurred.
mysql error: [1030: Got error 28 from storage engine] in EXECUTE("SHOW COLUMNS FROM `btTravisnSpacer`")
 
wow, heftig. Dat heb je met cut&paste....Kennelijk is er iets goed onderuit gegaan. Ik was niets aan het aanpassen, toch maar de foutjes bij langs gaan denk ik. :o
 
Hoi pelikano,
Ja, dat lijkt me wel de moeite waard.
Een paar belangrijke:
  • regel 73: style-blok in de <body>.
  • regel 99-105: een "htmlblock" (?) met <HTML>...</HTML>, in een <div>! :shocked:
  • regel 121-152: weer een "htmlblock", met <html><body>...</body></html>.
  • regel 178-202: nog eentje.
Dat de pagina zich nog weet te vertonen: pluim voor de foutafhandeling van de browsers! ;)

=====

Van die verkeerd gecodeerde ampersandjes in (vaak ellenlange en niet te lezen) URL's word ik altijd duizelig.
Maar hiervoor is een tooltje om ze zonder lezen te corrigeren:
  • Valid - o - Link
    voor de vervanging van & door &amp;
    en in één adem door ook de eventuele spaties door de geldige %20 codering
Met vriendelijke groet,
CSShunter
 
Laatst bewerkt:
Hoi CSShunter,
heb ik eindelijk een gaatje in mijn planning gevonden, werkt de onderstaande link niet...

Maar hiervoor is een tooltje om ze zonder lezen te corrigeren:
Valid - o - Link

Als ik de volle site probeer(www.developerscorner.nl) krijg ik een blanco pagina.

Heb je nog andere tooltjes als alternatief?
 
Hoi pelikano,
Ja, tot mijn ontzetting ligt de hele developerscorner.nl momenteel plat: server bij de provider gehackt! :evil:
In de broncode van de homepage staat braaf: <!-- Nothing to see here. --> :eek:
Geïnformeerd: provider heeft de site leeggehaald, ze doen hun best om het lek zsm te dichten en alles terug te plaatsen; maar het is zeker 5 dagen geleden en schiet nog niet erg op ... :confused:

Heb je nog andere tooltjes als alternatief?
Jazeker: hetzelfde tooltje. :)
Ik heb een duplicaat gemaakt en op een andere server gezet.


Met vriendelijke groet,
CSShunter
 
thx. ik vrees alleen dat ik de fouten niet kan verbeteren omdat het hier om een CMS gaat. In de code van de add-on's staat het ogenschijnlijk netjes. Ik heb nog de optie om een nieuwe CMS versie te intalleren. Ga ik komend weekend doen en checken of dat er dan beter uit ziet.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan