login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Javascript en php - Combinatiemogelijkheden (Opgelost)

Offline urqbz - 24/02/2009 15:32 (laatste wijziging 24/02/2009 15:32)
Avatar van urqbzPHP interesse Beste mensen,
Ik zit met het volgende hoofdbrekende probleem:

Ik heb een vrij simpel javascriptje:
  1. <!--
  2. function newdoc() {
  3. var answer = confirm ("Would you like top save your changes?")
  4. if (answer) {
  5. // <-------------------------------------------------
  6. }
  7. else {
  8. // reste fields
  9. document.form1.A.value = "";
  10. document.form1.Q.value = "";
  11. }
  12. }
  13. //-->

Dat geactiveerd woord wanneer men op een link klikt. nu is het de bedoeling dat er een php actie gaat worden uitgevoerd op de plek van de pijl, het javascript dus wel in stand houdend, maw als de gebruiker in het prompt op ok heeft gedrukt dient de actie te worden uitgevoerd:
  1. <?php // kleur
  2. save($filename); // eigen gedefineerde functie
  3. ?>


Bij voorbaat dank,
Urqbz

P.S. mocht dit de verkeerde categorie zijn, sorry daarvoor...

11 antwoorden

Gesponsorde links
Offline Koen - 24/02/2009 15:45
Avatar van Koen PHP expert Hier zal je AJAX moeten gebruiken, dat PHP scriptje in een apart bestand zetten en Javascript het laten aanroepen met behulp van Ajax.

Hier op sitemasters zijn verschillende tutorials over het gebruik van Ajax, veel succes 
Offline avdg - 24/02/2009 15:52 (laatste wijziging 24/02/2009 16:01)
Avatar van avdg PHP gevorderde Gaat het hier om een formulier die verzonden moet worden naar de server, om een nieuwe pagina aan te vragen?

Ik had vroeger iets gevonden van het controleren/bevestigen met js

Edit: gevonden: moets dat het geval zijn: voeg dit toe in je submit knop: onClick="controleVoorVerzenden()"
de formulier gaat dan enkel verzonden worden als de functie true teruggeeft

offtopic: waarom altijd ajax?
Offline vinTage - 24/02/2009 15:58
Avatar van vinTage Nieuw lid Zoals genoemd AJAX, in plaats van het zoekvoorbeeld, gebruik je gewoon je eigen php functie.
Offline urqbz - 24/02/2009 16:05
Avatar van urqbz PHP interesse Is AJAX niet bedoeld om koppelingen tussen xml en javascript te maken
Niet dat ik te beroerd ben om te lezen maar ik zie het verband niet helemaal, wete je zeker dat dit zo moet
Offline PRO - 24/02/2009 16:11
Avatar van PRO JS interesse ja klopt, AJAX is ook een verkeerde term, een HTTPrequest is het juiste woord. je kan het heel simpel doen...

Plaatscode: 99005

Dit is ook een httpRequest, alleen dan net wat anders ;) en wat simpeler, maar werkt prima op deze manier, je hoeft toch geen feedback terug te ontvangen.
Offline henver - 24/02/2009 16:13
Avatar van henver HTML gevorderde
  1. var xmlhttp;
  2. function save()
  3. {
  4. xmlhttp=null;
  5. if (window.XMLHttpRequest)
  6. {// code for Firefox, Opera, IE7, etc.
  7. xmlhttp=new XMLHttpRequest();
  8. }
  9. else if (window.ActiveXObject)
  10. {// code for IE6, IE5
  11. xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  12. }
  13. if (xmlhttp!=null)
  14. {
  15. xmlhttp.onreadystatechange=changeState;
  16. xmlhttp.open("GET","jouwphpbestand.php?a="+document.form1.A.value+"&q="+document.form1.Q.value,true);
  17. xmlhttp.send(null);
  18. }
  19. else
  20. {
  21. alert("Uw browser ondersteunt een bepaalde functie niet.");
  22. }
  23. }
  24.  
  25. function changeState()
  26. {
  27. if (xmlhttp.readyState==4)
  28. {// 4 = "loaded"
  29. if (xmlhttp.status==200)
  30. {// 200 = "OK"
  31. document.getElementById('response').innerHTML=xmlhttp.responseText;
  32. }
  33. else
  34. {
  35. alert("De gevraagde pagina werd niet gevonden:" + xmlhttp.statusText);
  36. }
  37. }
  38. }


  1. <!--
  2. function newdoc() {
  3. var answer = confirm ("Would you like top save your changes?")
  4. if (answer) {
  5. save();
  6. }
  7. else {
  8. // reste fields
  9. document.form1.A.value = "";
  10. document.form1.Q.value = "";
  11. }
  12. }
  13. //-->


Hierdoor wordt de inhoud van je 2 tekstvelden doorgestuurd naar een door jouw opgegeven php-file. Hiermee verwerk je de inhoud en geef je d.m.v. een echo het resultaat weer. Dit resultaat wordt opgevangen in de div met als id 'response'.
Offline Koen - 24/02/2009 16:18
Avatar van Koen PHP expert *Verplaatst naar Javascript*

@Henver: Allemaal goed en wel dat je hem die code geeft, maar hier leert de ts helemaal niets van...
Offline henver - 24/02/2009 16:20
Avatar van henver HTML gevorderde Ik gaf het hem omdat ik toevallig met net hetzelfde bezig was, maar inderdaad, hier leert hij niets van. Waarschijnlijk begrijpt ie het niet eens... Misschien toch maar verwijderen?
Offline Koen - 24/02/2009 16:23
Avatar van Koen PHP expert Misschien kan je beter commentaar toevoegen in de code 
Offline urqbz - 24/02/2009 16:45 (laatste wijziging 24/02/2009 16:45)
Avatar van urqbz PHP interesse Ik kan die code van Henver na het door hebben gelezen van de ajax tutorial redelijk volgen maar vraag me af of er een manier is om die inhoud van die velden zonder dat ze in de url staan mee te sturen?
(Like post ipv Get ofzoiets?)
PS Niet verwijderen aub...
Offline Koen - 24/02/2009 16:50
Avatar van Koen PHP expert Hoe je de post-method moet gebruiken:
http://www.open...g_post.php
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.197s