Hallo,
wenn ich einen Kunden anlege prüfe ich, ob dieser bereits in meiner Datenbank vorhanden ist:
if(isset($_POST['telefon_abschicken'])){
$tel = $_POST["telefon_check"];
$countTelefon = countTelefon($mysqli, $tel);
foreach($countTelefon as $countTelefon){
$er_telcheck = $countTelefon['amount'];
}
if($er_telcheck == 0) {
$_SESSION['telNummer'] = "0";
} else {
$error = "<div class=\"alert alert-danger\" role=\"alert\">Kunde existiert bereits</div><br>";
}
Die dazugehörige Funktion sieht so aus
function countTelefon($mysqli, $tel){
$stmt = $mysqli->prepare("SELECT COUNT(*) AS `amount` FROM web_kunden WHERE kd_telefon =? ");
$stmt->bind_param("s", $tel);
$stmt->execute();
$stmt->bind_result($amount);
$stmt->store_result();
if($stmt->num_rows() > 0) {
while ($stmt->fetch()){
$countTelefon[] = array(
'amount' => $amount
);
}
return $countTelefon;
}
}
Funktioniert auch, nur ich musste feststellen, dass viele auch einfach nur eine andere Durchwahl haben z.B. 0221 - xx xx xx 0 und 0221 - xx xx xx 1
Ist es möglich die Funktion so umzuschreiben dass wenn genau die Nummer eingetragen wird die Meldung kommt, Nummer bereits vorhanden (wie es jetzt der Fall ist) oder wenn die Nummer sagen wir zu 80% gleich ist, eine Meldung zu bekommen, Nummer ist zwar nicht 100% vorhanden, aber wir konnten eine ähnliche finde (zusätzlich dann die ähnliche Nummer zeigen). Kann PHP so etwas bzw. ist dieses schwer umzusetzten?