Een 'clickteller' met behulp van sessions?

Status
Niet open voor verdere reacties.

naquira

Nieuwe gebruiker
Lid geworden
23 nov 2008
Berichten
2
Hallo allemaal,

Ik hoop dat iemand me uit de brand kan helpen! Ik volg op het moment een module van PHP, en we hebben een opdracht gekregen waar ik niet zo even uit kom, zelf.

Dit is de bedoeling:
"Maak een clickteller. Telkens als je op de rode of de groene knop klikt wordt de teller van dezelfde kleur met 1 opgehoogd. Doe dit met behulp van sessions."

Ik heb een hoop verschillende scriptjes uitgeprobeerd, maar die werkten allemaal niet. Ik ben een beetje het spoor bijster. Iemand een idee hoe je dit op moet lossen? Alvast bedankt! :)
 
Wat heb je zelf al gedaan? Je kunt onmogelijk niets van die scripts opgestoken hebben.

Zonder (voldoende) antwoord op die vraag ben ik gedwongen je vraag te sluiten i.v.m. deze mededeling.
 
Dat is wel een hele makkelijke opdracht... Het lijkt me inderdaad handig als je laat zien wat je zelf geprobeerd hebt. Dit kost niet meer dan 10 regels code, letterlijk.
 
Wat heb je zelf al gedaan? Je kunt onmogelijk niets van die scripts opgestoken hebben.

Zonder (voldoende) antwoord op die vraag ben ik gedwongen je vraag te sluiten i.v.m. deze mededeling.

Ik had zelf 1 scriptje gevonden waarin ik het volste vertrouwen had dat deze zou werken:

PHP:
<?php
$host = "localhost";
$gebruiker = "username";
$wachtwoord = "password";
$DBNaam = "55196_php";
mysql_connect ($host, $gebruiker, $wachtwoord);
mysql_select_db($DBNaam);


 $linknaam=$_GET['Linknaam'];
  $sql="UPDATE tblClickteller SET aantal=aantal+1 WHERE Linknaam='$Linknaam'";
  $res=mysql_db_query($db,$sql,$mysql_id);
  ?>

<html>
  <body>
    Dit is de <a href='Linknaam=groen'>eerste link</a>.<br />
    Hier komt de <a href='Linknaam=rood'>tweede link</a>.<br />
    <br />
    <br />
    Overzicht link-teller:<br />
	
	<?php
	 $sql="SELECT * FROM tblClickteller;";
  $res=mysql_db_query($db,$sql,$mysql_id);
  while($row=mysql_fetch_row($res)){
    echo($row[0].": ".$row[1]."<br />");
  }
  ?>

Dit script bestond eerder uit meerdere paginas, die ik zelf heb geprobeerd samen te voegen, maar ik kreeg meteen al meerdere foutmeldingen.
Ik heb ook dit script geprobeerd met behulp van de andere paginas (de links gingen bijvoorbeeld naar pagina1.php?linknaam=link1) en via die pagina werd je teruggestuurd naar de pagina met de linkjes, en hij zou dan op moeten tellen. Er veranderde bij mij helemaal niets.

Ik heb geprobeerd deze er nog tussen op toe te passen:

PHP:
if (!isset ($_SESSION['hit'])){
$_SESSION['hit'] = TRUE;
$Linknaam = $Linknaam + 1;
}

Maar tot geen resultaat... Ik denk dat je na $_SESSION beide linkjes iets zou toe kunnen wijzen dat dit wel gebeurd, maar mijn kennis is enorm limited :/

Ik hoop hiermee voldoende informatie te hebben gegeven dat ik het wel degelijk geprobeerd heb, ik zou graag alle attempts voor je posten, maar dan word ie wel heel lang denk ik :shocked:

Dat is wel een hele makkelijke opdracht... Het lijkt me inderdaad handig als je laat zien wat je zelf geprobeerd hebt. Dit kost niet meer dan 10 regels code, letterlijk.

Het is vast heel simpel, als je al een tijdje met PHP bezig bent. Ik heb dit maar 2 uurtjes per week en helaas gaat het me niet zo gemakkelijk af dan andere dingen.

Ik heb inmiddels gepost wat ik heb uitgeprobeerd, alhoewel ik niet denk dat de code geheel bruikbaar is!
 
Laatst bewerkt door een moderator:
Ik zal je wat tips geven ;)

Dat eerste script maakt gebruik van een database; dat lijkt me sowieso niet de bedoeling.

Dat tweede script maakt gebruik van sessions; maar houd er rekening mee dat alleen de dingen die in de session staan overgedragen worden naar een volgende pagina. alle andere variabelen gaan verloren.

Zorg dus dat alles wat je wilt bewaren in de sessie zelf staat.

Ow; en als je huiswerk krijgt, probeer dan geen scriptjes te downloaden, dan maak je het meestal alleen maar moeilijker voor jezelf ;)

Je kunt beter gewoon even zoeken op www.php.net en zelf wat maken.
 
PHP:
<?php
$host = "localhost";
$gebruiker = "username";
$wachtwoord = "password";
$DBNaam = "55196_php";
mysql_connect ($host, $gebruiker, $wachtwoord);
mysql_select_db($DBNaam);


 $linknaam=$_GET['Linknaam'];
  $sql="UPDATE tblClickteller SET aantal=aantal+1 WHERE Linknaam='$Linknaam'";
  $res=mysql_db_query($db,$sql,$mysql_id);
  ?>

<html>
  <body>
    Dit is de <a href='Linknaam=groen'>eerste link</a>.<br />
    Hier komt de <a href='Linknaam=rood'>tweede link</a>.<br />
    <br />
    <br />
    Overzicht link-teller:<br />
    
    <?php
     $sql="SELECT * FROM tblClickteller;";
  $res=mysql_db_query($db,$sql,$mysql_id);
  while($row=mysql_fetch_row($res)){
    echo($row[0].": ".$row[1]."<br />");
  }
  ?>

Om deze code werkend te krijgen, zul je in ieder geval nog vraagtekens moeten toevoegen in je links:

PHP:
    Dit is de <a href='?Linknaam=groen'>eerste link</a>.<br />
    Hier komt de <a href='?Linknaam=rood'>tweede link</a>.<br />

Ik heb het script verder niet uitgebreid nagekeken, maar het zou zo wel eens kunnen werken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan