Author Topic: Ausblenden des Rate_Forms nach abgegebener Bewertung  (Read 15350 times)

0 Members and 1 Guest are viewing this topic.

Offline magic

  • Pre-Newbie
  • Posts: 7
    • View Profile
Ausblenden des Rate_Forms nach abgegebener Bewertung
« on: October 15, 2002, 11:09:49 PM »
Hallo!

Ist es auf einfache Weise möglich, das Template rate_form.html nach abgegebener Bewertung für das jeweilige dieses Bild auszublenden?

Wäre schön, wenn mal jemand antworten könnte.
Auch wenn die Antwort negativ ausfällt.
Vielen Dank.

Beste Grüsse,

Magic

Offline Jan

  • Administrator
  • 4images Guru
  • *****
  • Posts: 5.024
    • View Profile
    • 4images - Image Gallery Management System
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #1 on: October 16, 2002, 08:46:27 AM »
Probiere mal das:

Öffne "includes/functions.php" und ersetze:
Code: [Select]
$rate_form = "";
if (check_permission("auth_vote", $image_row['cat_id'])) {

mit:
Code: [Select]
$rated_imgs = $site_sess->get_session_var("rated_imgs");
$split_list = explode(" ", $rated_imgs);
$rate_form = "";
if (check_permission("auth_vote", $image_row['cat_id']) && !in_array($image_row['image_id'], $split_list)) {

Jan
Your first three "must do" before you ask a question:
1. Forum rules
2. FAQ
3. Search

Offline magic

  • Pre-Newbie
  • Posts: 7
    • View Profile
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #2 on: October 17, 2002, 12:21:39 AM »
Juchu ...

Vielen Dank, Jan.
Hat geklappt, super.  :D

Beste Gruesse,

Magic

Offline teddy

  • Newbie
  • *
  • Posts: 43
    • View Profile
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #3 on: November 03, 2002, 02:55:14 AM »
Hallo zusammen,

das Ausblenden klappt. Wenn der User sich aber ab und wieder neu anmeldet, kommt es wieder.

Kann man irgendwo einstellen, das es immer ausgeblendet bleibt, wenn ein User ein Bild bewertet hat?

Danke im voraus
Gruß Uwe
DigiCamTalk

Offline teddy

  • Newbie
  • *
  • Posts: 43
    • View Profile
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #4 on: November 23, 2002, 09:20:56 PM »
Die IP Sperre würde auch nicht gewünschten Erfolg bringen.

Ich habe in der Datenbank eine neue Tabelle angelegt, dort wird gespeichert, welcher User für welches Bild votet.

Wenn er erneut voten will, wird die Tabelle ausgelesen und es kommt die Meldung:
Du hast dieses Bild schon bewertet.

Somit ist eine Mehrfachbewertung ausgeschlossen.

Gruß Uwe
Gruß Uwe
DigiCamTalk

Offline Aho

  • Jr. Member
  • **
  • Posts: 55
    • View Profile
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #5 on: February 04, 2003, 04:32:53 PM »
wo muß man etwas ändern, damit der user anstelle des rate_form eine nachricht sieht, z.b. "Du hast dieses Bild schon bewertet, und zwar eine 5 (1 schlecht - 5 super)" ?

Offline ThReCa

  • Newbie
  • *
  • Posts: 24
    • View Profile
    • http://DMike.de
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #6 on: March 17, 2003, 10:55:17 PM »
Also das asublenden funktioniert wie oben erwähnt...
Aber es mus zumindest bei der Version 1.7 noch eine andere Möglichkeit geben!

Da, wenn ich ein zweites Mal meine Bewertung abgeben will, folgende Meldung erscheint:
Quote

31 neu
--------------------------------------------------------------------------------
Sie haben dieses Bild bereits bewertet!


Aber ich finde die Stelle nicht, wo das überprüft wird...
Ich habe die Galerie erst seit ein paar Tagen und finde mich noch nicht so recht zu recht...
Auch wenn es sehr gut gecodet wurde!
Lob an die Programmierer!

Hat jemand eine Idee, wo und wie diese Meldung entsteht... Ich komme nicht weiter...


Mike

Offline teddy

  • Newbie
  • *
  • Posts: 43
    • View Profile
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #7 on: March 18, 2003, 06:41:06 AM »
Hallo zusammen,

die oben, von mir genannte, Möglichkeit hat sich leider nicht bewährt.
Die Tabelle wurde immer größer und die Zeit für die Abfragen immer länger.

Hier versuche ich zu zeigen, wie man das Mehrfachbewerten verhindern kann, indem das Formular ausgeblendet wird.

Benötigt wird auf jeden Fall ein neues Feld in der Datenbank bei 4images_images.

Legt zunächst ein neues Feld am Ende der Tabelle 4images_images an.

Nennt dieses Feld z.B. :  
voters  
TYP Text

In dieses Feld werden wir eintragen, wenn jemand ein Bild bewertet.
Wenn später ein Bild aufgerufen wird, wird diese Spalte ausgelesen und das rate_formular verschwindet, wenn der User schon bewertet hat.

im Ordner includes findet Ihr die Datei:
page_header.php

In Zeile 245 steht:
Code: [Select]
update_image_rating($id, $rating);
Bitte ändern in:
Code: [Select]
update_image_rating($id, $rating, $user_info['user_name']);

in der functions.php Zeile 525 steht:
Code: [Select]
function update_image_rating($image_id, $rating) {
Bitte ändern in:
Code: [Select]
function update_image_rating($image_id, $rating, $user) {

Zeile 527:
Code: [Select]
$sql = "SELECT cat_id, image_votes, image_rating

Bitte ändern in:
Code: [Select]
$sql = "SELECT cat_id, image_votes, image_rating, voters

Unter Zeile 535 $old_rating einfügen:
Code: [Select]
$old_voters = $image_row['voters'];
$new_voters = $old_voters.",".$user;


Zeile 539:
Code: [Select]
SET image_votes = ($old_votes + 1), image_rating = '$new_rating'

Bitte ändern in:
Code: [Select]
SET image_votes = ($old_votes + 1), image_rating = '$new_rating', voters = '$new_voters'


Ab jetzt sollte in der Datenbank bei jedem Bild stehen, wer schon bewertet hat.

Fehlt noch das Auslesen.

Öffne die details.php
in Zeile 46 steht:
Code: [Select]
$sql = "SELECT i.image_id, i.cat_id, i.us..................

Füge i.voters hinzu:
Code: [Select]
$sql = "SELECT i.voters, i.image_id, i.cat_id, i.us..........


Füge nach Zeile 485, unmittelbar vor Clickstream folgendes ein:
Code: [Select]
if (strpos($image_row['voters'], $user_info['user_name'])) $site_template->register_vars("rate_form", "");


Fertig. Ich hoffe es klappt alles. Habe es gerade nochmal so geteset, es dürften keine Fehler auftauchen. Garantie übernehme ich aber trotzdem nicht. ;)

Immer wenn ein User ein Bild schon bewertet hat, wird das Formular ausgeblendet. Egal ob er die Cookies löscht oder nicht.
Gruß Uwe
DigiCamTalk

Offline ThReCa

  • Newbie
  • *
  • Posts: 24
    • View Profile
    • http://DMike.de
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #8 on: March 18, 2003, 07:01:17 AM »
Was mich etwas verwirrt, das 4images 1.7 es schon irgendwie sich merkt, wer bei welchen Bild eine Bewertung abgegeben hat und das hält länger als eine Session...
Aber ich finde es nicht...
Weder im Code noch in der DB...
Hat das jemand schon gefunden?

Mike

Offline teddy

  • Newbie
  • *
  • Posts: 43
    • View Profile
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #9 on: March 18, 2003, 07:30:48 AM »
Hi Mike,

im Cookie.

Lösche mal die Temporary Internet Files und die Cookies.

Danach kannst Du wieder bewerten.

Geschrieben wird das wohl in der page_header.php (im Ordner includes)

Ab Zeile 226 unter Save Rating.
Gruß Uwe
DigiCamTalk

Offline Bany

  • Newbie
  • *
  • Posts: 35
    • View Profile
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #10 on: March 20, 2003, 09:39:04 PM »
Hi @teddy,

habe es mal eingebaut und geht alles "Danke"

Bany

Offline ThReCa

  • Newbie
  • *
  • Posts: 24
    • View Profile
    • http://DMike.de
Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #11 on: March 25, 2003, 11:01:11 PM »
Also Danke für all die Unterstützung!
Es klappt alles wunderbar!

 Mike

Offline PetraK

  • Jr. Member
  • **
  • Posts: 98
    • View Profile
    • http://www.tiermotive.de
Re: Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #12 on: April 20, 2005, 11:36:00 AM »
Ich habe den Code-Schnippsel auch eingebaut, aber wo sehe ich jetzt, wer gevotet hat.

Grüsse PetraK

Ausserdem wird das Formular nicht ausgeblendet, wenn ich ein zweites Mal vote.

Noch eine Frage, und zwar, an welcher Stelle in der details.php wird der  Code:

if (strpos($image_row['voters'], $user_info['user_name'])) $site_template->register_vars("rate_form", "");

eingefügt???

Offline HorrorCrafT

  • Full Member
  • ***
  • Posts: 106
    • View Profile
    • HYPOfun online
Re: Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #13 on: April 20, 2005, 12:38:34 PM »

also ich verwende die 1.7.1 version und da ist es nicht mehr notwendig so umständlich das mehrfachbewerten abzustellen. da geht es nämlich von grund auf schon nicht und das ist dann auch unabhängig von ip oder cache. denke mal dass da die user ID gespeichert wird und sobald diese dann nochmal versucht das bild zu bewerten kommt die meldung "nix da" ... oder so ähnlich  :D

Offline PetraK

  • Jr. Member
  • **
  • Posts: 98
    • View Profile
    • http://www.tiermotive.de
Re: Ausblenden des Rate_Forms nach abgegebener Bewertung
« Reply #14 on: April 20, 2005, 01:52:14 PM »
leider kann ich die neueste Version 1.7.1 nicht installieren, weil ich viele Module nachträglich installiert habe.
Ich werde mir mal heute abend die details.php, functions.php und page_header.php von der Version 1.7.1 genau anschauen und ggf. die Codes, die noch fehlen, einfügen.