Gå til innhold

SQL query og javascript-handling ved knappetrykk


Anbefalte innlegg

Heisann,

 

Jeg holder på med et galleriscript, og ønsker å loggføre hver eneste bilde som blir åpnet.

Jeg bruker Lightbox2 til å vise bildene i full størrelse, så jeg laster ingen sider på nytt når jeg klikker på ikonbildet/knappen/linken til bildet.

 

Jeg ønsker at når man klikker på bildeikonet/knappen/linken, så skal bildet åpnes i "javascriptvinduet" som før, og samtidig oppdatere raden i databasen.

 

Jeg bruker følgende kode for øyeblikket, og det eneste den gjør er å åpne bildet i det "virtuelle vinduet":

<?php
if($_POST['execute']) {
mysql_query("UPDATE imglog set opened = '1'");
echo "<img src=\"bilder/bilde.jpg\" rel=\"lightbox\">";
}
?>

<form action="" method="post">
<ul class="gallery">
<li><a href="bilder/bilde.jpg" rel="lightbox">
<span></span><input type="submit" value="Execute" name="execute" class="green" /></a></li>
</ul>
</form>

Hvis jeg ikke pakker inn knapp-kodesnutten i noe (li, span, a) så oppdaterer den databasen.

 

Er det i det hele tatt mulig å gjøre begge ting på en gang?

Lenke til kommentar
Videoannonse
Annonse

Har kommet fram til følgende kode:

<li><a href="bilder/bilde.jpg" rel="lightbox" onclick="alert:('Fisk')"><span></span><img src="bilder/ikoner/7.jpg" alt="image" /></a></li>

 

Er det mulig å få til noe alá:

<li><a href="bilder/bilde.jpg" rel="lightbox" onclick="KjørPHPkode"><span></span><img src="bilder/ikoner/7.jpg" alt="image" /></a></li>

Lenke til kommentar
Er det mulig å få til noe alá:

<li><a href="bilder/bilde.jpg" rel="lightbox" onclick="KjørPHPkode"><span></span><img src="bilder/ikoner/7.jpg" alt="image" /></a></li>

Ja det er det. Det finnes flere muligheter å gjøre dette på. Du kan google søkeordet "javascript httprequest". Har lagt ved et eksempel for dette ved at en benytter seg av jQuery biblioteket. Om du velger denne løsningen anbefalere jeg deg å lese litt dokumentasjon om dette biblioteket.

 

Eksempel her: http://bareare.net/misc/httprequest

 

output.php inneholder kun echo 'PHP output';

Lenke til kommentar

For å få det på det rene, så er jeg totalt nybegynner innefor javascript og AJAX

 

 

Kjører følgende nå

<link rel="stylesheet" href="style/style.css" type="text/css" />
<link rel="stylesheet" href="style/lightbox.css" type="text/css" media="screen" />
<script type="text/javascript" src="style/prototype.js"></script>
<script type="text/javascript" src="style/scriptaculous.js?load=effects,builder"></script>
<script type="text/javascript" src="style/lightbox.js"></script>
<script src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
// Load jQuery
google.load("jquery", "1");
google.setOnLoadCallback(initialize);

function initialize() {
  $('a#link').bind('click', function(e) {
	$.get('output.php', function(data) {
	  alert(data);
	});
  });
}
</script>

<h2>What if God was one of us?</h2>
<p>
<ul class="gallery">
 <li>
<a id="link" href="bilder/bilde.jpg" rel="lightbox"><span></span><img src="bilder/ikoner/7.jpg" alt="image" /></a>
 </li>
</ul>

 

Det som skjer er at databasen oppdateres (scriptet i output.php kjøres), og man blir videresendt til bildet. Bildet åpnes ikke i AJAX vinduet.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...