Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Registrierung von Kunden ? 
 
antonio2604
Sr. Member
 
Avatar
Total Posts:  123
Joined:  2008-07-16
Osnabrück
 

Hallo zusammen, gibt es eine möglichkeit bevor sich eine kundnen anmeldet asl neu kunde eine abfrage zu starten ob es seine Kundennummer in der DB überhaupt giebt.

Meine Idee !

In der DB wird eine Liste mit Kundennummern gespeichert.

Bei der Registierung muß der Kunde seine Kundennummer eingeben.
Diese wird in der DB überprüft. und wenn es die Kundennummer gibt erst dann
kann man den rest des Formulares ausfüllen.

Kann mir da jemand Helfen oder Ideen liefern ?
Ich sage jetzt schon mal danke.

Natürlich werde ich meine lösung hier reinstellen smile

 
Magento Community Magento Community
Magento Community
Magento Community
 
antonio2604
Sr. Member
 
Avatar
Total Posts:  123
Joined:  2008-07-16
Osnabrück
 

Habe eine lösung gefunden .

 
Magento Community Magento Community
Magento Community
Magento Community
 
Rico_Neitzel
Moderator
 
Avatar
Total Posts:  857
Joined:  2007-09-05
Würzburg, Germany
 

Hallo Antonio,

da du augenscheinlich der erste bist, der das Problem lösen konnte, wäre es toll, wenn du dir ein paar Minuten Zeit nehmen könntest um anderen Usern weiterzuhelfen.

Wie hast du dein Problem gelöst?

Danke und viele Grüße
Rico

 
Magento Community Magento Community
Magento Community
Magento Community
 
antonio2604
Sr. Member
 
Avatar
Total Posts:  123
Joined:  2008-07-16
Osnabrück
 

Nun ich habe es nicht wirklich in als Magento Modul gelöst , sonder ich habe ein kleinen PHP Script geschrieben welches eine Abfrage in der DB macht.

Der aufbau ist folgender maßen.
Als erstes habe ich in der DB ein Tabelle erstellt welches alle Kundennummern die für den Shop zugelassen sind enthält.

ID | number

Im Template für die Registrierung:
magento/app/design/frontend/meine-seite/default/template/customer/form/login.phtml
habe ich folgende Codezeilen eingebaut.

<label for="pass"><?php echo $this->__('Kundennummer'?> <span class="required">*</span></label>
<?php echo"<br>";?>
<input type="text" onkeyup="searchFor(this.value);">
<?php echo"<br>";?>
<div id="ergebnis"></div>
Das ist das Textfeld für meine Kundennummer die ich in der DB Suche.

Um die Abfrage zu starten Wir nich ein Javascript benötigt.
Das Script welches man dafür benötigt habe ich in folgender Datei eingebunden.
magento/app/design/frontend/meine-seite/default/template/page/html/head.phtml

</script>
      
<script type="text/javascript">
        function 
searchFor(suchbegriff){
            
var xmlHttp null;
            
// Mozilla, Opera, Safari sowie Internet Explorer 7
            
if (typeof XMLHttpRequest != 'undefined'{
                xmlHttp 
= new XMLHttpRequest();
            
}
            
if (!xmlHttp{
                
// Internet Explorer 6 und Ã¤lter
                
try {
                    xmlHttp  
= new ActiveXObject("Msxml2.XMLHTTP");
                
catch(e{
                    
try {
                        xmlHttp  
= new ActiveXObject("Microsoft.XMLHTTP");
                    
catch(e{
                        xmlHttp  
null;
                    
}
                }
            }
            
// Wenn das Objekt erfolgreich erzeugt wurde            
            
if (xmlHttp{
                
var url "http://localhost/magento/include/suche.php";
                var 
params "suchbegriff="+suchbegriff;
                
                
xmlHttp.open("POST"urltrue);
                
                
//Headerinformationen für den POST Request
                
xmlHttp.setRequestHeader("Content-type""application/x-www-form-urlencoded");
                
xmlHttp.setRequestHeader("Content-length"params.length);
                
xmlHttp.setRequestHeader("Connection""close");                    
            
                
xmlHttp.onreadystatechange = function () {
                    
if (xmlHttp.readyState == 4{
                        
// Zurückgeliefertes Ergebnis wird in den DIV "ergebnis" geschrieben
                        
document.getElementById("ergebnis").innerHTML xmlHttp.responseText;
                    
}
                }
;                
                
xmlHttp.send(params);
            
}            
        }
    </script>
Diese Zeile im Script ist für die Suchdatei nötig.
var url = “http://localhost/magento/include/suche.php”;

Jetzt gibt es noch die Datei suche.php die ich im Order include habe.

<?php

    
// Verbindung
    
$server "localhost";
    
$benutzername "root";
    
$passwort "";    
    
    
$datenbank "magento";

    
// Server Verbindung herstellen
    
mysql_connect($server,$benutzername,$passwort) or 
    die (
"Keine Verbindung moeglich");
    
    
// Datenbank Verbidung
    
mysql_select_db($datenbank) or
    die (
"Die Datenbank existiert nicht");

    
$tabelle "kundennummer";
    
    if (
$_POST["suchbegriff"]){
        
// Mysql Abfrage wird gespeichert mit den Notwendigen Parameter
        
$sql "SELECT number FROM ".$tabelle." WHERE number LIKE ('".mysql_real_escape_string($_POST["suchbegriff"])."')";
        
        
// Mysql Abfrage wird durchgeführt
        
$result mysql_query($sql);
        
        
// Suchbegriff wird ausgegeben
        
        
echo "Es wir nach dieser Kundennummer gesucht: ".$_POST["suchbegriff"]."<br/><br/>";

        
// Ergebnis wird ausgegeben mit Zeilenumbruch
        
while($row mysql_fetch_object($result)){
            $customernr 
utf8_encode($row->number);
        
            if(
$customernr $_POST["suchbegriff"]){
?>

<button class="form-button right" onclick="[removed]='http://myref.de?';" type="button"><span>Benutzerkonto anlegen</span></button>

<?php
      }
            
        }
    }
    
    
?>
In dieser datei wird die Suche in der Datenbank gemacht.

Ich weiß natürlich das das nicht die beste Lösung ist aber für meine Zwecke reicht es aus.
Man müßte die Abfrage vieleicht noch erweitern um mehr sicherheit zu erreichen.
Die Abfrage dient eigendlich nur um die Schaltfläche für die Registrierung zu zeigen.

Deswegen, alles was hier steht ist wirklich nur aus der Not endstanden und ist nicht voll in den Shop Integriert.
Würde natürlch gern ein Modul daraus entwickeln. Also wenn mir jemand sagen kann wie ich Ein Modul Programmier, bin ich für jeden hinweis dankbar.

Vieleicht kann es ja jemand gebrauchen.

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top