Hallo,
wie komme ich per php an Kundendaten?
über we:customer schaffe ich es wohl die Daten auszugeben, aber ich möchte die Daten auch über php ändern können.
Anwendungsbeispiele:
Zähler beim Aufrufen eines Kundenprofils erhöhen.
oder
Kunden nach Registrierung eine Mail zuschicken mit einem Link auf eine Seite, auf der dann der User sein Profil freigeben muss. "Klicken Sie auf diesen Link um Ihre Anmeldung zu verfollständigen".... so kann ich sicherstellen, das die Mailadresse korrekt ist.
Mir gelingt es aber nicht die Daten per we:setVar oder per php für ein eigenes Script zu nutzen.
Danke für Eure Tipps
Kundendaten via php ändern
- JuergenEbbing
- webEdition Partner
- Beiträge: 246
- Registriert: Do 1. Jan 1970, 02:00
- Wohnort: Ramsdorf
- Kontaktdaten:
Kundendaten via php ändern
------------
da bin ich ja mal gespannt,
ob ich neugierig bin
------------
da bin ich ja mal gespannt,
ob ich neugierig bin
------------
-
- webEdition Partner
- Beiträge: 1825
- Registriert: Di 7. Mär 2006, 16:50
- Wohnort: Wien
- Kontaktdaten:
Re: Kundendaten via php ändern
hi jürgen,
ganz low-level kannst du folgendes machen um daten auszugeben:
analog dazu funktioniert die manipulation:
eventuell gibt es dafür auch schon funktionen die du für diese zwecke nutzen kannst. einfach mal im source schauen.
HTH,
Sascha
ganz low-level kannst du folgendes machen um daten auszugeben:
Code: Alles auswählen
$query = "SELECT * FROM `tblWebUser` WHERE ....";
$result = mysql_query($query) or die("Fehlgeschlagen: " . mysql_error());
$row = mysql_fetch_array($result);
if (isset($row["ID"]) && $row["ID"] =! "")
{
/* die gewünschten daten ausgeben */
...
}
Code: Alles auswählen
$query="UPDATE tblWebUser SET ... WHERE ...";
$result = mysql_query($query);
HTH,
Sascha
- JuergenEbbing
- webEdition Partner
- Beiträge: 246
- Registriert: Do 1. Jan 1970, 02:00
- Wohnort: Ramsdorf
- Kontaktdaten:
Re: Kundendaten via php ändern
Spitze, das hat funktioniert.
Jetzt hapert es aber wieder an meinen php Kenntnissen.
Ich habe ein tolles Counter-Skript mit IP-Sperre gefunden, das allerdings mit einer Textdatei arbeitet und nicht per Datenbank. Ich habe nun versucht das Script so umzuschreiben, dass die Counter-Daten für x-beliebig viele Kundendaten nicht in zig Textdokumenten gespeichert werden, sondern direkt in die WE-Datenbank, so das ich diese immer passend zum Kunden abgespeichert habe. Aber ich komme hier irgendwie nicht weiter.
Hier das originalscript:
Und so sieht das Ganze bei mir aus, wenn ich die Log-Datei in die Kundenverwaltung im Feld "COUNTin" schreiben möchte:
Wäre sehr dankbar wenn jemand weiterhelfen könnte. Vielleicht ist das ja auch für den ein oder anderen User ein interessanter Lösungsansatz um bestimmte Aufrufe in Ihrer Häufigkeit zu begrenzen.
Jetzt hapert es aber wieder an meinen php Kenntnissen.
Ich habe ein tolles Counter-Skript mit IP-Sperre gefunden, das allerdings mit einer Textdatei arbeitet und nicht per Datenbank. Ich habe nun versucht das Script so umzuschreiben, dass die Counter-Daten für x-beliebig viele Kundendaten nicht in zig Textdokumenten gespeichert werden, sondern direkt in die WE-Datenbank, so das ich diese immer passend zum Kunden abgespeichert habe. Aber ich komme hier irgendwie nicht weiter.
Hier das originalscript:
Code: Alles auswählen
<?
///////// FlatFileCounter v1.0 //////////
// copyright & written in Aug 2003 //
// by Lukas Stalder //
// contact: flounter@planetluc.com //
// Visit www.planetluc.com! //
// enjoy it! //
//////////////////////////////////////////////
/*
Installation
1. change the $expire variable's value to whatever you want
2. upload the 2 files (flount.php, flount.log)
3. chmod the flount.log file to 777
4. include the flount.php wherever you want to cont your visits
by inserting <? include('flount.php');?> into your site
that's it!
*/
$expire= "50"; // ip expires after $expire seconds
$expire= $GLOBALS['expire'];
global $expire;
echo $expire;
echo $GLOBALS['expire']; // ip expires after $expire seconds
echo "<br>WARTEZEIT: <br>".$expire."<br>";
echo $expire;
$logfile= "flount.log"; // file where visits and ip logs are stored
// *************************** don't change anything below this line *************************
$incpath=substr(__FILE__, 0, strrpos(__FILE__, "/")+1);
$logfile=$incpath.$logfile;
$ip= getenv('REMOTE_ADDR');
$visits=0;
$badhit= false;
$now= time();
$ips = array(array());
if (file_exists($logfile)){
if ($loggedips=file($logfile)){
$visits=trim($loggedips[0]);
echo "<br>VISITS: ".$visits;
for ($i=1; $i< count($loggedips); $i++){
$loggedips[$i]=trim($loggedips[$i]);
echo "<br>Logged: ".$loggedips[$i];
$ips[$i] = explode('||', $loggedips[$i]);
if (($ips[$i][0]==$ip) && ($now-$ips[$i][1]< $expire))
$badhit= true;
}
if ($badhit)
echo "<br>badhit: ".$visits;
else{
$visits++;
$fp= fopen($logfile, 'w');
fputs($fp,"$visits\n");
for ($i=1; $i< count($loggedips); $i++){
if ($now-$ips[$i][1] < $expire)
fputs($fp, $ips[$i][0]."||".$ips[$i][1]."\n");
}
fputs($fp, "$ip||$now\n");
fclose($fp);
echo "<br>newhit: ".$visits;
}
}
}else
echo "logfile is missing";
?>
Code: Alles auswählen
$we_cid = "5";
/* Aktuellen Stand des Zaehlers auslesen */
$DB_WE->connect;
$abfrage = mysql_query("SELECT COUNTin FROM tblWebUser WHERE ID='$we_cid'");
$ergebnis = mysql_fetch_assoc($abfrage) or die("Diese ID existiert nicht");
$expire= "100"; // ip expires after $expire seconds
$ip= getenv('REMOTE_ADDR');
echo "<br>Ihre IP lautet: ".$ip."<br>";
$badhit= false;
$now= time();
$logfile = $ergebnis;
$loggedips = $ergebnis;
$visits=trim($loggedips[0]);
for ($i=1; $i< count($loggedips); $i++){
$loggedips[$i]=trim($loggedips[$i]);
$ips[$i] = explode('||', $loggedips[$i]);
if (($ips[$i][0]==$ip) && ($now-$ips[$i][1]< $expire))
$badhit= true;
}
if ($badhit)
echo "<br>Sie wurden bereits gezählt: ".$visits;
else{
$visits++;
$alteIPS = $loggedips;
$fp .= "$visits\n";
$fp .= "$alteIPS\n";
for ($i=1; $i< count($loggedips); $i++){
if ($now-$ips[$i][1] < $expire)
$fp .= $ips[$i][0]."||".$ips[$i][1]."\n";
}
$fp .= "$ip||$now\n";
}
mysql_query("UPDATE tblWebUser SET COUNTin = '$fp' WHERE ID='$we_cid'");
------------
da bin ich ja mal gespannt,
ob ich neugierig bin
------------
da bin ich ja mal gespannt,
ob ich neugierig bin
------------
-
- webEdition Partner
- Beiträge: 1825
- Registriert: Di 7. Mär 2006, 16:50
- Wohnort: Wien
- Kontaktdaten:
Re: Kundendaten via php ändern
Hi,
Ich hab mir das jetzt nicht im Detail angeschaut, aber wenn ich dich richtig verstehe, soll für einen Benutzer der Zugriff automatisch gesperrt werden, wenn in der Zeit t1 mehr als x Zugriffe erfolgen?
Wenn dem so ist, kannst du dir überlegen die Zugriffe in einer eigenen Tabelle in der Datenbank abzulegen:
HTH,
Sascha
Ich hab mir das jetzt nicht im Detail angeschaut, aber wenn ich dich richtig verstehe, soll für einen Benutzer der Zugriff automatisch gesperrt werden, wenn in der Zeit t1 mehr als x Zugriffe erfolgen?
Wenn dem so ist, kannst du dir überlegen die Zugriffe in einer eigenen Tabelle in der Datenbank abzulegen:
- UID
- Timestamp
HTH,
Sascha
- JuergenEbbing
- webEdition Partner
- Beiträge: 246
- Registriert: Do 1. Jan 1970, 02:00
- Wohnort: Ramsdorf
- Kontaktdaten:
Re: Kundendaten via php ändern
Hi Sascha,
danke - für die Antwort.
Wie das mit der eigenen Tabelle funktioniert hatte ich schon in einigen Tutorials gelesen. Allerdings möchte ich das unbedingt in dem gleichen Datensatz tun, in dem die Userdaten stehen um nicht auf eine weitere Tabelle zurückzugreifen. Nur wie ich das mit dem Skript von oben hinbekomme weiß ich nicht. Irgendwie kriege ich das mit dem Aufzählen, Arrray etc. nicht auf die Kette.
danke - für die Antwort.
Wie das mit der eigenen Tabelle funktioniert hatte ich schon in einigen Tutorials gelesen. Allerdings möchte ich das unbedingt in dem gleichen Datensatz tun, in dem die Userdaten stehen um nicht auf eine weitere Tabelle zurückzugreifen. Nur wie ich das mit dem Skript von oben hinbekomme weiß ich nicht. Irgendwie kriege ich das mit dem Aufzählen, Arrray etc. nicht auf die Kette.
------------
da bin ich ja mal gespannt,
ob ich neugierig bin
------------
da bin ich ja mal gespannt,
ob ich neugierig bin
------------
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 12 Gäste