php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.03.2008, 11:06  
Neuer Benutzer
 
Registriert seit: 08.03.2008
Beiträge: 25
areUkidding befindet sich auf einem aufstrebenden Ast
Standard Counter zählt die Klicks nicht...

Hallo,
ich habe ein Counter Script das Klicks auf einen Link zählen und diese dann auf eine Spalte in einer MySQL Tabelle addieren soll.
Leider funktioniert es nicht und ich hab keine Ahnung woran es liegen könnte. habe auch schon sehr viel ausprobiert.

<?php
$host = "localhost";
$user = "name";
$pass = "pw";
$dbase = "dbname";
$connection = mysql_connect("$host" , "$user" , "$pass") or die;
$db = mysql_select_db($dbase , $connection) or die;

$query="SELECT * FROM privat where id='".strip_tags($_REQUEST["user"])."'";
$result= mysql_query($query, $connection) or die
("Fehler: $query." . mysql_error());

$row=mysql_fetch_array($result);
$LINK = $row['LINK'];
$gesundheit1 = $row['gesundheit1'];

$query="update privat set gesundheit1 = gesundheit1+'1' where id='".strip_tags($_REQUEST["user"])."'";
$result= mysql_query($query) or die (mysql_error());
header("Location: $LINK");
?>

Der Link eingebaut :

<img src="balkenanfang.gif" height="10"><img src="balkenmitte.gif" height="10" width="<?= $row->gesundheit1 ?>"><img src="balkenende.gif" height="10">
<br><a href="count.php?id=<?=$row->id ?>" target="blank">pflegen</a>

Hat jemand ne Idee wo der Fehler sein könnte?
areUkidding ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.03.2008, 11:13  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

count.php?id=<?=$row->id ?>

$_REQUEST["user"]

ich glaube da muss ich nichts weiter zu sagen oder?
cycap ist offline   Mit Zitat antworten
Alt 17.03.2008, 11:32  
Neuer Benutzer
 
Registriert seit: 08.03.2008
Beiträge: 25
areUkidding befindet sich auf einem aufstrebenden Ast
Standard

der obere PHP Teil ist aber für sich.
Der untere wird auf einer anderen Seite eingebaut wo alle daten eines Users der sich eingelogged hat erfragt werden.

Quasi so :

<?php
include("header.php");
include("db.php");
include("functions.inc.php");
if(exist("privat WHERE id = '".strip_tags($_REQUEST["user"])."'")) {
$abfrage = "SELECT * FROM privat WHERE id = '".strip_tags($_REQUEST["user"])."' LIMIT 0,1";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
?>
areUkidding ist offline   Mit Zitat antworten
Alt 17.03.2008, 11:52  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Dann geb doch mal mehr Infos... mit "funktioniert nicht" kann hier keiner was anfangen...
cycap ist offline   Mit Zitat antworten
Alt 17.03.2008, 12:02  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

strip_tags ist nicht zum Sichern von SQL Parametern geeignet. Mysql hat keine Probleme mit HTML Sonderzeichen. Wenn Du mysql_query verwendest, brauchst Du mysql_real_escape_string.
Was passiert mit
PHP-Code:
<?php
error_reporting
(E_ALL);
ini_set('display_errors'1);
if (!isset(
$_REQUEST['user']))
{
  die(
'REQUEST[user] fehlt');
}
$host "localhost";
$user "name";
$pass "pw";
$dbase "dbname";
$connection mysql_connect("$host" "$user" "$pass") or die(mysql_error());
$db mysql_select_db($dbase $connection) or die(mysql_error($connection));
$sql_userid mysql_real_escape_string($_REQUEST["user"], $connection);

$query="update privat set gesundheit1 = gesundheit1+'1' where id='$sql_userid'";
$resultmysql_query($query$connection) or die (mysql_error());
if (
mysql_affected_rows($connection)>0)
{
  
$query="SELECT LINK FROM privat where id='$sql_userid'";
  
$resultmysql_query($query$connection) or die (mysql_error());
  
$row mysql_fetch_array($result);
  if (
$row===false || !isset($row['LINK']))
  {
    
var_dump($row);
    exit;
  }
  
header("Location: " $row['LINK']);
}
?>
?
David ist offline   Mit Zitat antworten
Alt 17.03.2008, 12:04  
Neuer Benutzer
 
Registriert seit: 08.03.2008
Beiträge: 25
areUkidding befindet sich auf einem aufstrebenden Ast
Standard

also, wenn ich es eingebaut habe gibt es keine fehlermeldung.
Der Link der angeklickt wird mit counter.php führt zum Verzeichnis anstatt zum angegebenen Link. Außerdem wird wie gesagt auch nicht die Spalte mit +1 addiert.
areUkidding ist offline   Mit Zitat antworten
Alt 17.03.2008, 12:11  
Neuer Benutzer
 
Registriert seit: 08.03.2008
Beiträge: 25
areUkidding befindet sich auf einem aufstrebenden Ast
Standard

hab das von David probiert.
es kommt folgende meldung :

REQUEST[user] fehlt
areUkidding ist offline   Mit Zitat antworten
Alt 17.03.2008, 18:04  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Dann ist eben doch der Link das Problem. id ist nicht user.
David ist offline   Mit Zitat antworten
Alt 17.03.2008, 18:36  
Erfahrener Benutzer
 
Benutzerbild von Hu5eL
 
Registriert seit: 26.02.2008
Beiträge: 342
Hu5eL befindet sich auf einem aufstrebenden Ast
Hu5eL eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von David Beitrag anzeigen
strip_tags ist nicht zum Sichern von SQL Parametern geeignet. Mysql hat keine Probleme mit HTML Sonderzeichen. Wenn Du mysql_query verwendest, brauchst Du mysql_real_escape_string.
Was passiert mit
PHP-Code:
<?php
error_reporting
(E_ALL);
ini_set('display_errors'1);
if (!isset(
$_REQUEST['user']))
{
  die(
'REQUEST[user] fehlt');
}
$host "localhost";
$user "name";
$pass "pw";
$dbase "dbname";
$connection mysql_connect("$host" "$user" "$pass") or die(mysql_error());
$db mysql_select_db($dbase $connection) or die(mysql_error($connection));
$sql_userid mysql_real_escape_string($_REQUEST["user"], $connection);

$query="update privat set gesundheit1 = gesundheit1+'1' where id='$sql_userid'";
$resultmysql_query($query$connection) or die (mysql_error());
if (
mysql_affected_rows($connection)>0)
{
  
$query="SELECT LINK FROM privat where id='$sql_userid'";
  
$resultmysql_query($query$connection) or die (mysql_error());
  
$row mysql_fetch_array($result);
  if (
$row===false || !isset($row['LINK']))
  {
    
var_dump($row);
    exit;
  }
  
header("Location: " $row['LINK']);
}
?>
?
strip_tags entfernt aber alle html und php befehle in dem sting, was zumindest in meinen augen bei gästebüchern etc ganz praktisch ist... klar das die sachen escaped werden müssen...
Hu5eL ist offline   Mit Zitat antworten
Alt 18.03.2008, 18:09  
Neuer Benutzer
 
Registriert seit: 08.03.2008
Beiträge: 25
areUkidding befindet sich auf einem aufstrebenden Ast
Standard

Also in die Tabellenspalte habe ich eine einfache URL eingetragen... auch mit http ...
areUkidding ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Counter in "selbstgestrickte" Homepage - wie? magro PHP Tipps 2008 11 30.03.2008 16:37
Probleme mit counter Hasso PHP Tipps 2007 15 24.05.2007 02:18
Klicks zählen dethlef14 PHP Tipps 2006 7 06.03.2006 15:18
ein counter - und berechnungen netti PHP Tipps 2005-2 11 24.10.2005 21:03
Counter - Daten gelöscht - Erklärung?? havok PHP-Fortgeschrittene 5 20.10.2005 01:51
Counter - Daten gelöscht - Erklärung?? havok PHP Tipps 2005-2 9 18.10.2005 20:51
Counter - wie realisieren PHP Tipps 2005-2 6 07.10.2005 14:34
Counter funktioniert, aber trotzdem wird Fehler gezeigt ... PHP Tipps 2005 4 07.03.2005 17:56
Suche Counter Script Beitragsarchiv 8 17.01.2005 13:42
Problem mit counter HTML, Usability und Barrierefreiheit 10 12.01.2005 06:04
Counter für registrierte user PHP Tipps 2004-2 3 26.12.2004 11:32
Bildergalerie zählt ununterbrochen Klicks PHP Tipps 2004 0 28.09.2004 08:53
counter verschwindet immer! HILFE! PHP Tipps 2004 2 30.08.2004 11:02
counter für gallerie Sclot PHP Tipps 2004 2 05.07.2004 15:36
Problem mit einem Counter JeeZ PHP Tipps 2004 6 18.06.2004 13:36

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php counter der klicks zählt, counter zählt nicht

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:34 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum