Toon posts:

[JS] registratie klikgedrag*

Pagina: 1
Acties:

Verwijderd

Topicstarter
ASP: server side scripting. Ik vrees dat ik het antwoord al weet maar zoek toch naar bevestiging of liever een oplossing!

De vraag is: bijhouden van klikgedrag op speciefieke items. Ofwel statistieken!
Er een een nieuwspagina (items uit db) die getoond worden op een pagina. dmv div tags is de inhoud van de berichten niet zichtbaar, alleen de titel, lead...
Door op het lees meer linkje te klikken wordt het aangeklikte item uitgeklapt en is de inhoud zichtbaar.

Wat ik wil is het klikgedrag registreren. Als er op de leesmeer link geklikt wordt moet dat geregistreerd worden. Nu is de opzet van de pagina zo dat de pagina niet gerefreshed hoeft te worden om een item te lezen, vandaar de div tags display show/hide ..maar....volgens mij kan ik niet meer met asp het id van het nieuwsitem laten wegschrijven in een db zonder refresh van de pagina omdat de pagina al volledig geladen is...

Ik denk dat ik genoodzaakt ben om een refresh van de pagina te doen om de registratie naar de server te sturen maar ik hoop stiekem op een andere oplossing.....wat is anders nog het nut van het laten openklappen van de items ipv een deeplink pagina naar het volledige nieuwsbericht..

Niek

  • Kayshin
  • Registratie: Juni 2004
  • Laatst online: 09-03-2018

Kayshin

Bl@@T @@P!!!

Kan je het klikgedrag niet opslaan in een tem variabele (array) en bij noodzakelijke refreeshes/page loads deze doorsturen naar de db?

My personal videoteek: -Clique-; -NMe- is een snol!


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

Maak een onzichtbaar/klein iframe dat je steeds ververst met een nieuwe url. ;)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • André
  • Registratie: Maart 2002
  • Laatst online: 06-05 11:13

André

Analytics dude

Je kunt met xmlhttp elke keer de klik wel naar de server sturen om hem op te slaan :)

  • CrashOne
  • Registratie: Juli 2000
  • Niet online

CrashOne

oOoOoOoOoOoOoOoOoOo

Dit kan op verschillende manieren, waarvan ik XMLHttpRequest de mooiste vind.

edit:
André :( :>

[ Voor 16% gewijzigd door CrashOne op 01-06-2005 14:18 ]

Huur mij in als freelance SEO consultant!


Verwijderd

Topicstarter
André schreef op woensdag 01 juni 2005 @ 14:16:
Je kunt met xmlhttp elke keer de klik wel naar de server sturen om hem op te slaan :)
oke dat wordt even googleen voor mij...

De oplossingen van een iframe had ik an gedacht maar vindt dit (nu) geen geschikte oplossing..

Verwijderd

Topicstarter
AH!!!!! Cool man....Helmaal goed die XMLHttpRequest!
Hieronder een oplossing....

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript">
function httpxmlstats(id_bericht) {

document.body.style.cursor='wait';

// Create an instance of the XML HTTP Request object
var oXMLHTTP = new ActiveXObject( "Microsoft.XMLHTTP" );
    
// Prepare the XMLHTTP object for a HTTP POST to our validation ASP page
var sURL = "http://www.jepagina.asp" + id_bericht
oXMLHTTP.open( "POST", sURL, false );

// Execute the request
oXMLHTTP.send();


document.body.style.cursor='auto';
}
</SCRIPT>

  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
Ik heb het zelf ook zo gedaan met xmlhttp. Zorg er wel voor dat je goed uitzoekt welke browser gebruikt wordt want er zijn een paar mogelijkheden om het object te maken.
edit:
Bovenstaande code werkt bijvoorbeeld niet op firefox.
;)

Je kan dan ook netjes bijhouden hoelang iemand de pagina al open heeft, de volgorde van klikken en elke keer dat het iframe iets doet zegt IE "klik" wat vrij vervelend kan zijn. ;)

[ Voor 11% gewijzigd door Gert op 01-06-2005 14:51 ]


Verwijderd

Topicstarter
Code uitgebreid met wat ik dacht was een js en browser check maar in firefox nogsteeds geen resultaat. Is het helemaal niet te doen of volstaat de scripting niet:
code:
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
39
40
41
42
43
44
45
46
47
48
49
<SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript">
function getHTTPObject() {
  var oXMLHTTP;
  /*@cc_on
  @if (@_jscript_version >= 5)
    try {
      oXMLHTTP = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (E) {
        oXMLHTTP = false;
      }
    }
  @else
  oXMLHTTP = false;
  @end @*/
  if (!oXMLHTTP && typeof XMLHttpRequest != 'undefined') {
    try {
      oXMLHTTP = new XMLHttpRequest();
    } catch (e) {
      oXMLHTTP = false;
    }
  }
  return oXMLHTTP;
}
var http = getHTTPObject(); // We create the HTTP Object

function httpxmlstats(id_bericht) {

//document.body.style.cursor='wait';

// Create an instance of the XML HTTP Request object

//var oXMLHTTP = new ActiveXObject( "Microsoft.XMLHTTP" );
    
// Prepare the XMLHTTP object for a HTTP POST to our validation ASP page
var sURL = "http://www.pagina.nl/includes/xmlstats.asp?hoofdonderdeel=Nieuwsberichten&subonderdeel=" + id_bericht
http.open( "POST", sURL, false );

// Execute the request
http.send();

//if (oXMLHTTP.responseText == "exists") 
//alert("Sorry - the User ID " + suserid + " already exists.");

//document.body.style.cursor='auto';
}
</SCRIPT>

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

Ok, geen ASP meer te bekennen, dus mag dit topic nieuwe vriendjes gaan maken in Webdesign & Graphics. :P

PW>>WG

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
ah gevonden, geen http:// adres als url die opgeroepen moet worden voor de mozilla variant..
nu is bonvenstaand script werkend, ook in firefox

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:21

crisp

Devver

Pixelated

waarom moet het nou weer met xmlhttp, en niet zoiets (dat veel breder ondersteund wordt en eenvoudiger is):
JavaScript:
1
2
clickregister = new Image();
clickregister.src = 'http://url.naar.je.script?foo=bar&nocache='+new Date().getTime();

En laat je script na het verwerken een 1x1 pixel gifje terugsturen

Intentionally left blank

Pagina: 1