Registrieren  •  Login 
  
 
im Forum


 FAQ   Mitgliederliste   Benutzergruppen   Teamseite   Suchen 

Ajax Abstimmung?
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



OC-Nickname: KB19
Südafrika Team South Africa

Anmeldedatum: 09.05.2006
Geschlecht: Männlich
Alter: 29 Jahre
Beiträge: 13892
Wohnort: Wien

BeitragVerfasst am: 20.01.2007, 10:26    Titel: Ajax Abstimmung?

Ich würde gerne bei einem neuen Script die Möglichkeit bieten, dass User über einen Beitrag / Foto abstimmen können. Aber es soll nicht die ganze Seite neu geladen werden.

Was ich meine ist eine typische Ajax-basierende Abstimmung:
Man klickt auf einen von 5 Sternen, die Anfrage wird an ein PHP-Script gesendet, aber es erscheint dann zum Beispiel nur: "Danke Smile"

Ihr kennt das sicher von Youtube oder Wordpress.
Ich habe auch schon versucht das einfach abzuschauen, aber irgendwie funktioniert das nicht so, wie ich es will.

Vielen Dank schon im Voraus für eure Unterstützung Wink


MfG Christian
_________________
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit online Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden Website dieses Benutzers besuchen
thoha
Übersetzer
Übersetzer



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 2591

BeitragVerfasst am: 20.01.2007, 12:55    Titel:

Hi

in der Bildergalerie Coppermine gibt's genau so etwas, aber ich weiss nicht, ob es mit Ajax gemacht ist, aber ich weiss nicht, ob es jedesmal wieder neu lädt.



Ajax = Fensterputzmittel = Programmiersprache Laughing
Nach oben
Benutzer-Profile anzeigen thoha ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden
fanrpg
Mitglied
Mitglied



Anmeldedatum: 14.12.2006
Geschlecht: Keine Angabe
Beiträge: 126
Wohnort: Windeck

BeitragVerfasst am: 20.01.2007, 15:48    Titel:

Zitat:
... = Programmiersprache

Seit wann das denn? Shocked
So weit ich weiss ist es doch nur eine Programmiertechnik (auf JS Basis), aber keine eigene Programmiersprache, oder hat sich das mittlerweile wieder weiterentwickelt? Embarassed

Dieser Beitrag wurde insgesamt 1 mal geändert. Zuletzt von fanrpg.
Nach oben
Benutzer-Profile anzeigen fanrpg ist derzeit offline Private Nachricht senden Website dieses Benutzers besuchen
P@k.l
Ehemaliger
Ehemaliger



Anmeldedatum: 17.06.2006
Geschlecht: Männlich
Beiträge: 340
Wohnort: Köln

BeitragVerfasst am: 20.01.2007, 17:36    Titel:

Ich hab mir mal was zusammengebastelt, könnt ihr hier ausprobieren.
So, in der ajaxbewertung.php sieht das ganz so aus:
Code:
<script language="JavaScript">
function createRequestObject() {
  var ro;
  var browser = navigator.appName;
  if(browser == "Microsoft Internet Explorer"){
    ro = new ActiveXObject("Microsoft.XMLHTTP");
  }else{
    ro = new XMLHttpRequest();
  }
  return ro;
}

var http = createRequestObject();

function bewertung(bewertung,bild) {
  document.getElementById("abstimmen").innerHTML = '<img src="loader.gif">';
  http.open('get', 'bewertung.php?bewertung='+bewertung+'&bild='+bild);
  http.onreadystatechange = handleResponse;
  http.send(null);
}
function handleResponse() {
    if(http.readyState == 4){
        var response = http.responseText;
        document.getElementById("abstimmen").innerHTML = response;
    }
}
function hover_stern(stern) {
  var count = 0;
  while(count < stern) {
    count++;
    document.getElementById('stern'+count).src = "stern_hover.gif";
  }
}
function unhover_stern(stern) {
  var count = 0;
  while(count < stern) {
    count++;
    document.getElementById('stern'+count).src = "stern.gif";
  }
}
</script>
<img src="testbild.jpg"><br>
<?php

/* ================================
||  SQL-Verbindung...             ||
================================ */

$sql = "SELECT * FROM `image_bewertung`";
$result = mysql_query($sql);
if($result) {
  $count = 0;
  $bewertung = array();
  while($row = mysql_fetch_assoc($result)) {
    if($row["bewertung"] == 1) {
      $bewertung["1"]++;
    } else if($row["bewertung"] == 2) {
      $bewertung["2"]++;
    } else if($row["bewertung"] == 3) {
      $bewertung["3"]++;
    } else if($row["bewertung"] == 4) {
      $bewertung["4"]++;
    } else if($row["bewertung"] == 5) {
      $bewertung["5"]++;
    }
    $count++;
  }
  echo "Bisherige Bewertung durch <b>".$count."</b>";
  if($count == 1) {
    echo " Bewertung: ";
  } else {
    echo " Bewertungen: ";
  }
  $bewertung["result"] = 1*$bewertung["1"]+2*$bewertung["2"]+3*$bewertung["3"]+4*$bewertung["4"]+5*$bewertung["5"];
  $bewertung["result"] = $bewertung["result"]/$count;
  if($bewertung["result"] != 0) {
    if($bewertung["result"] > 1) {
      if($bewertung["result"] > 2) {
        if($bewertung["result"] > 3) {
          if($bewertung["result"] > 4) {
            echo "<img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\">";
          } else {
            echo "<img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\"> <img src=\"stern.gif\">";
          }
        } else {
          echo "<img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\"> <img src=\"stern.gif\"> <img src=\"stern.gif\">";
        }
      } else {
        echo "<img src=\"stern_hover.gif\"> <img src=\"stern_hover.gif\"> <img src=\"stern.gif\"> <img src=\"stern.gif\"> <img src=\"stern.gif\">";
      }
    } else {
      echo "<img src=\"stern_hover.gif\"> <img src=\"stern.gif\"> <img src=\"stern.gif\"> <img src=\"stern.gif\"> <img src=\"stern.gif\">";
    }
  } else {
    echo "<img src=\"stern.gif\"> <img src=\"stern.gif\"> <img src=\"stern.gif\"> <img src=\"stern.gif\"> <img src=\"stern.gif\">";
  }
} else {
  echo "Durch einen Datenbankfehler konnte die Bewertung leider nicht angezeigt werden.";
}

?>
<div id="abstimmen">Selber Bewerten:
                    <a href="javascript:bewertung('1','bild1')"><img onMouseOver="hover_stern('1')" onMouseOut="unhover_stern('1')" id="stern1" src="stern.gif" border="0"></a>
                    <a href="javascript:bewertung('2','bild1')"><img onMouseOver="hover_stern('2')" onMouseOut="unhover_stern('2')" id="stern2" src="stern.gif" border="0"></a>
                    <a href="javascript:bewertung('3','bild1')"><img onMouseOver="hover_stern('3')" onMouseOut="unhover_stern('3')" id="stern3" src="stern.gif" border="0"></a>
                    <a href="javascript:bewertung('4','bild1')"><img onMouseOver="hover_stern('4')" onMouseOut="unhover_stern('4')" id="stern4" src="stern.gif" border="0"></a>
                    <a href="javascript:bewertung('5','bild1')"><img onMouseOver="hover_stern('5')" onMouseOut="unhover_stern('5')" id="stern5" src="stern.gif" border="0"></a></div>


So... durch das JavaScript wird eine PHP-Datei ausgeführt und Variablen übergeben... diese bewertung.php sieht folgender Maßen aus:
PHP-Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$bewertung 
$_GET["bewertung"];
$bild $_GET["bild"];

/* ================================
||  SQL-Verbindung...             ||
================================ */

$sql "INSERT INTO
          `image_bewertung`
          (`bewertung`,`bild`)
        VALUES
          ('"
.$bewertung."','".$bild."')";
$result mysql_query($sql);
if(
$result) {
  echo 
"Danke f&uuml;r deine Bewertung!";
} else {
  echo 
"Durch einen Datenbankfehler konnte deine Bewertung leider nicht gez&auml;hlt werden.";
}

Umlaute und ß müssen in dieser PHP-Datei mit diesem HTML-Gedöhne geschrieben werden, weil JavaScript daraus ein Fragezeichen macht.

Ich hoffe ich konnte dir (/euch) damit weiterhelfen. Smile
Ich bin natürlich für alle Fragen offen. Very Happy
_________________
Nach oben
Benutzer-Profile anzeigen P@k.l ist derzeit offline Private Nachricht senden Website dieses Benutzers besuchen
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



OC-Nickname: KB19
Südafrika Team South Africa

Anmeldedatum: 09.05.2006
Geschlecht: Männlich
Alter: 29 Jahre
Beiträge: 13892
Wohnort: Wien

BeitragVerfasst am: 20.01.2007, 19:45    Titel:

Danke pakl. Das sieht genauso aus, wie ich es brauche Very Happy
Ich werde das ganze natürlich sofort ausprobieren Wink


MfG Christian
_________________
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit online Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden Website dieses Benutzers besuchen
rami
Mitglied
Mitglied



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 759

BeitragVerfasst am: 20.01.2007, 20:03    Titel:

super. kannst du jetzt auch noch die bilder (stern.gif und so) anbieten?
Nach oben
Benutzer-Profile anzeigen rami ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



OC-Nickname: KB19
Südafrika Team South Africa

Anmeldedatum: 09.05.2006
Geschlecht: Männlich
Alter: 29 Jahre
Beiträge: 13892
Wohnort: Wien

BeitragVerfasst am: 20.01.2007, 20:07    Titel:

Die brauchst du doch nur zu speichern Rolling Eyes

Mir fällt noch etwas ein:
Wäre es eigentlich ohne Großen Aufwand möglich die Daten nicht über GET, sondern über POST zu übertragen? Ich will damit verhindern, dass Leute einfach die Bewertungsseite für jedes Bild aufrufen...


MfG Christian
_________________


Dieser Beitrag wurde insgesamt 1 mal geändert. Zuletzt von killerbees19.
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit online Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden Website dieses Benutzers besuchen
P@k.l
Ehemaliger
Ehemaliger



Anmeldedatum: 17.06.2006
Geschlecht: Männlich
Beiträge: 340
Wohnort: Köln

BeitragVerfasst am: 21.01.2007, 16:19    Titel:

killerbees19 hat Folgendes geschrieben:
Mir fällt noch etwas ein:
Wäre es eigentlich ohne Großen Aufwand möglich die Daten nicht über GET, sondern über POST zu übertragen?

Da gibt's nur eine Antwort: Nein! Ich würde es auch mit POST machen, wenn es ginge. Wink
Aber du kannst ja in Cookies speichern, ob man schon abgestimmt hat, oder nicht.
_________________
Nach oben
Benutzer-Profile anzeigen P@k.l ist derzeit offline Private Nachricht senden Website dieses Benutzers besuchen
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



OC-Nickname: KB19
Südafrika Team South Africa

Anmeldedatum: 09.05.2006
Geschlecht: Männlich
Alter: 29 Jahre
Beiträge: 13892
Wohnort: Wien

BeitragVerfasst am: 21.01.2007, 16:24    Titel:

Mit den Cookies habe ich das ganze schon fertig gestellt Wink
Und als Zusatz wird die IP für x Tage gespeichert, falls man Cookies blockiert.


MfG Christian
_________________
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit online Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden Website dieses Benutzers besuchen
NoMoKeTo
Ehemaliger
Ehemaliger



Anmeldedatum: 13.07.2006
Geschlecht: Männlich
Beiträge: 1019
Wohnort: NRW

BeitragVerfasst am: 21.01.2007, 16:58    Titel:

Genau das kannst du bei den Posts in meinem Blog machen! Wink

Vielleicht mal in den Quelltext gucken? Bei bedarf sende ich dir gerne die PHP-Dateien meines Blogs!
_________________
Ich spreche Esperanto und lerne auf diesem Weg tolle Leute kennen - weltweit!
Nach oben
Benutzer-Profile anzeigen NoMoKeTo ist derzeit offline Private Nachricht senden Website dieses Benutzers besuchen
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



OC-Nickname: KB19
Südafrika Team South Africa

Anmeldedatum: 09.05.2006
Geschlecht: Männlich
Alter: 29 Jahre
Beiträge: 13892
Wohnort: Wien

BeitragVerfasst am: 21.01.2007, 17:09    Titel:

Da blicke ich jetzt nicht durch....
Bei dir ist es mit Post möglich, oder was?
Jedenfalls find eich in deinem Quelltext nichts besonderes Sad


MfG Christian
_________________
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit online Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden Website dieses Benutzers besuchen
rami
Mitglied
Mitglied



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 759

BeitragVerfasst am: 23.01.2007, 12:47    Titel:

hilfe! da kommt nur

Zitat:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /var/www/users/raphaelmichel/homepage/index.php on line 441


Zeile 441 ist:
PHP-Code:
1
<?php $sql "SELECT * FROM `image_bewertung`"
Nach oben
Benutzer-Profile anzeigen rami ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
P@k.l
Ehemaliger
Ehemaliger



Anmeldedatum: 17.06.2006
Geschlecht: Männlich
Beiträge: 340
Wohnort: Köln

BeitragVerfasst am: 23.01.2007, 12:50    Titel:

Was ist denn in der Zeile dadrüber, wenn ich fragen darf?
_________________
Nach oben
Benutzer-Profile anzeigen P@k.l ist derzeit offline Private Nachricht senden Website dieses Benutzers besuchen
rami
Mitglied
Mitglied



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 759

BeitragVerfasst am: 23.01.2007, 12:51    Titel:

leer und davor
PHP-Code:
1
2
3
<?php /* ================================ 
||  SQL-Verbindung...             || 
================================ */ 


EDIT: TUT JETZT!

Dieser Beitrag wurde insgesamt 1 mal geändert. Zuletzt von rami.
Nach oben
Benutzer-Profile anzeigen rami ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
P@k.l
Ehemaliger
Ehemaliger



Anmeldedatum: 17.06.2006
Geschlecht: Männlich
Beiträge: 340
Wohnort: Köln

BeitragVerfasst am: 23.01.2007, 12:54    Titel:

Du solltest schon zur MySQL-Datenbank verbinden, sonst hat das ganze doch gar keinen Sinn. Und die Tabelle sollte auch vorhanden sein.
_________________
Nach oben
Benutzer-Profile anzeigen P@k.l ist derzeit offline Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht teilnehmen.
Du kannst Dateien in diesem Forum nicht hochladen.
Du kannst Dateien in diesem Forum nicht herunterladen.

 

Alle Zeiten sind GMT + 2 Stunden (Sommerzeit)
Aktuelles Datum und Uhrzeit: 30.03.2020, 19:10
Nach oben
Valid HTML 4.01 Transitional
Valid CSS!
Software based on work from the phpBB-Group  •  Deutsche Übersetzung von phpBB.de

netcup - Internetdienstleistungen
 
 
[ happytec.at | forum.happytec.at | blog.happytec.at | esports.happytec.at | event.happytec.at ]