star rating
tropenberta
- sonstiges
0 Baba0 tropenberta0 braini0 tropenberta0 Der Martin0 bubble0 Der Martin0 bubble
hi leuts
ich würde mal gerne ein rating system auf meiner seite einbauen.
leider haut das alles irgendwie nicht hin. momentan hab ich es soweit :
http://p166753.webspaceconfig.de/test/rating/rating.html
ich kann ne bewertung abgeben, wenn ich die seite neu lade ist diese aber verworfen.
da muss doch irgendwie gespeichert werden das der user schon ne bewertung abgegeben hat, bzw muss der user irgendwie erkennen können wieviele votes auf nen artikel bereits gemacht wurden und wie die zwischensumme davon ausschaut.
wie kann ich so etwas umsetzen ?
gruss micha
hi baba
danke für deine antwort.
bin jetzt auch soweit ( mit nem anderen tutorial ).
http://p166753.webspaceconfig.de/test/rating2/rating.html
leider hab ich noch ein problem mit der db. (strato - mysql)
folgendes script muss ich anpassen:
<?php
//settings for 5 Star Rating System with PHP , MySQL ,Jquery and Ajax
$rating_tableName = 'ratings';
$rating_unitwidth = 15;
$rating_dbname = 'xxx';
$units=5;
function connect(){
$host="localhost";
$uname="xxx";
$pass="abc123";
$rating_dbname = 'xxx';
$con = mysql_connect($host,$uname,$pass);
....
wenn ihr euch mein beispiel anschaut und ne bewertung abgebt bekommt ihr nen fehler zurück.
und zwar geb ich den $host falsch an glaub ich.
in der db verwaltung hab ich "ratings.sql" importiert, also tabelle exestiert.
hab auch probiert den host mit 127.0.0.1 anzugeben, was auch nicht ging.
pls hlp.
gruss micha
hi braini
vielen dank für deine antwort.
hab ich vorher schonmal ausprobiert, funzt leider auch nicht. (habs natürlich nach dem ich deine antwort gelesen hatte nochmal probiert)
http://p166753.webspaceconfig.de/test/rating2/rating.html
kurze verständnisfrage : wenn ich im browser die php datei ansteuere passiert doch folgendes:
anfrage von host an den server
server führt php skript aus
im skript steht - mit dem host verbinden
wenn ich doch als host jetzt localhost oder 127.0.0.1 angebe, schickt doch der server ne anfrage an den dns und löst die adresse auf.
sprich 127.0.0.1 ist doch das gleiche wie rdbms.strato.de.
bitte korrigiert mich wenn ich da was falsch verstehe.
hab natürlich auch mal nach der fehlermeldung gegoogelt, was mich irgendwie auch nicht weiter gebracht hat.
Could not connect: Lost connection to MySQL server at 'reading initial communication packet', system error: 104
hier noch mal das skript:
<?php
$rating_tableName = 'ratings';
$rating_unitwidth = 15;
$rating_dbname = 'xxx';
$units=5;
function connect(){
$host="localhost";
$uname="xxx";
$pass="abc123";
$rating_dbname = 'xxx';
$con = mysql_connect($host,$uname,$pass);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db($rating_dbname, $con);}
was mir jetzt aufgefallen ist, hab fast keine erfahrung mit php, aber es ist kein schliesendes php tag verhanden ( ?> ). ist das nicht zwingend notwendig ?
ich hoffe ihr könnt mir bissl weiter helfen.
gruss
micha
Hallo,
kurze verständnisfrage : wenn ich im browser die php datei ansteuere passiert doch folgendes:
anfrage von host an den server
server führt php skript aus
im skript steht - mit dem host verbinden
soweit klar, aber um Missverständnissen vorzugreifen: In der ersten Zeile meint "host" natürlich deinen PC, von dem du die HTTP-Anfrage stellst.
wenn ich doch als host jetzt localhost oder 127.0.0.1 angebe, schickt doch der server ne anfrage an den dns und löst die adresse auf.
Jein ... Grundsätzlich ja, aber wenn die IP-Adresse (127.0.0.1) direkt dasteht, ist eine DNS-Anfrage natürlich witzlos, und auch den Hostnamen localhost lösen die meisten Systeme über ihre /etc/hosts selbst auf, ohne einen DNS damit zu belästigen.
sprich 127.0.0.1 ist doch das gleiche wie rdbms.strato.de.
Vermutlich nicht. Es scheint eher so zu sein, dass Webserver und Datenbank bei Strato auf verschiedenen Servern laufen.
was mir jetzt aufgefallen ist, hab fast keine erfahrung mit php, aber es ist kein schliesendes php tag verhanden ( ?> ). ist das nicht zwingend notwendig ?
Nein, das ist okay so - es wird sogar oft *empfohlen*, das schließende ?> wegzulassen, wenn danach keine Ausgabe an den Client mehr folgt.
Ciao,
Martin
hi bubble, hi martin
vielen dank für eure antworten.
bin wieder bissl schlauer als vorher.
aber zurück zu meinen eigentlichen problem.
ich hab bei host jetzt rdbms.strato.de eingetragen
hab meine db, user und passwort angegeben
hab in mysql die tabelle importiert.
aber trotzdem bekomm ich ne fehlermeldung.
muss ich noch irgendetwas anderes beachten wenn ich mich mit der db verbinden möchte.
hab mich denk ich mal genau an die strato faq gehalten.
kann das eventuell irgendwie mit den benutzerrechten zu tun haben.
hab mich mal bei mysql umgeschaut, konnte aber leider keine optionen zum einstellen der rechte finden. ( ist zwar peinlich aber ich hab mich gestern das erstemal mit mysql auseinander gesetzt und hab auch so keine erfahrungen mit db systemen )
gruss
micha
hi braini
vielen dank für deine antwort.
hab ich vorher schonmal ausprobiert, funzt leider auch nicht. (habs natürlich nach dem ich deine antwort gelesen hatte nochmal probiert)
http://p166753.webspaceconfig.de/test/rating2/rating.html
kurze verständnisfrage : wenn ich im browser die php datei ansteuere passiert doch folgendes:
anfrage von host an den server
server führt php skript aus
im skript steht - mit dem host verbinden
Falsch,
der Browser sendet eine Anfrage an den Server (bzw. dessen Webserver)
der Webserver, führt das PHP-Script aus
PHP stellt eine Verbindung mit dem MySQL Server her (wenn alles glatt läuft)
PHP beendet seine Arbeit
Webserver sendet das Resultat an den Browser.
wenn ich doch als host jetzt localhost oder 127.0.0.1 angebe, schickt doch der server ne anfrage an den dns und löst die adresse auf.
Ich glaub bei localhost sollte man nicht von DNS sprechen, AFAIK steht localhost einfach in der hosts-Datei des Betriebssystem.
Wenn da eine Domain an eine IP gebunden wird, wird der Domain-Name nicht weiter bei irgendwelchen DNS-Servern abgefragt,
sprich 127.0.0.1 ist doch das gleiche wie rdbms.strato.de.
Der MySQL-Server muss nicht auf dem Rechner installiert sein, sondern auf einem anderen. Dann wäre rdbms.strato.de auch nicht der localhost bzw. 127.0.0.1 und das wird bei Strato wohl der Fall sein.
Ob rdbms.strato.de nun via DNS aufgelöst wird oder in den jeweiligen hosts-Dateien der Server steht ist für dich jedoch irrelevant.
was mir jetzt aufgefallen ist, hab fast keine erfahrung mit php, aber es ist kein schliesendes php tag verhanden ( ?> ). ist das nicht zwingend notwendig ?
Nö, es ist sogar (teilweise) ratsam ?> weg zu lassen, um z.B. zu verhindern, dass irgendwelche Whitespaces mit in den Inhalt geraten
MfG
bubble
Hallo,
anfrage von host an den server
server führt php skript aus
im skript steht - mit dem host verbinden
Falsch,
der Browser sendet eine Anfrage an den Server (bzw. dessen Webserver)
der Webserver, führt das PHP-Script aus
PHP stellt eine Verbindung mit dem MySQL Server her (wenn alles glatt läuft)
PHP beendet seine Arbeit
Webserver sendet das Resultat an den Browser.
worin besteht jetzt der Unterschied zwischen deiner Darstellung und der von Micha "tropenberta"? - Mal abgesehen davon, dass du noch zwei Schritte richtig hinzugefügt hast?
Wenn da eine Domain an eine IP gebunden wird, wird der Domain-Name nicht weiter bei irgendwelchen DNS-Servern abgefragt,
Was meinst du damit??
Ciao,
Martin
anfrage von host an den server
server führt php skript aus
im skript steht - mit dem host verbindenFalsch,
der Browser sendet eine Anfrage an den Server (bzw. dessen Webserver)
der Webserver, führt das PHP-Script aus
PHP stellt eine Verbindung mit dem MySQL Server her (wenn alles glatt läuft)
PHP beendet seine Arbeit
Webserver sendet das Resultat an den Browser.worin besteht jetzt der Unterschied zwischen deiner Darstellung und der von Micha "tropenberta"? - Mal abgesehen davon, dass du noch zwei Schritte richtig hinzugefügt hast?
Na, dass nicht der host eine Anfrage sendet, sondern der Browser (bzw. allgemeiner Client).
Jetzt im Nachhinein muss ich aber zugeben, dass "Falsch" das falsche Wort ist.
Wenn da eine Domain an eine IP gebunden wird, wird der Domain-Name nicht weiter bei irgendwelchen DNS-Servern abgefragt,
Was meinst du damit??
Damit wollt ich sagen, dass wenn man eine Domain samt IP in die hosts-Datei einträgt, keine DNS-Anfrage mehr geschieht.
MfG
bubble