creativeheadz
Erfahrenes Mitglied
Hallo,
ich möchte gerne eine Bankleitzahl auf Richtigkeit prüfen.
Dazu habe ich in der Datenbank alle echten Bankleitzahlen hinterlegt.
Nun habe ich ein Formular das wie folgt aufgebaut ist:
Dann nutze ich ein Java Script um die Bankleizhal zu überprüfen:
Der PHP Code zum abgleichen sieht wie folgt aus:
Das Feld wird erfolgreich auf Zahlen geprüft, und es wird auch als Pflichtfeld markiert. Leider gibt mir das Skript grundsätzlich aus: "Diese Bankleitzahl ist nicht korrekt." Auch wenn ich eine korrekte Bankleitzahl eingebe. Wo mache ich einen Fehler?
Gruß
ich möchte gerne eine Bankleitzahl auf Richtigkeit prüfen.
Dazu habe ich in der Datenbank alle echten Bankleitzahlen hinterlegt.
Nun habe ich ein Formular das wie folgt aufgebaut ist:
HTML:
<div id="success">DANKE</div>
<div id="ecbox" style="display:none;">
<form id="ec" name="ec" method="post">
<table width="100%" border="0" cellspacing="0" cellpadding="5">
<tr>
<td width="160">Kontoinhaber</td>
<td><?php echo $fname.' '.lname; ?></td>
<td class="status"></td>
</tr>
<tr>
<td>Kontonummer</td>
<td><input type="text" name="ec_account_number" class="input" /></td>
<td class="status"></td>
</tr>
<tr>
<td>Bankleitzahl</td>
<td><input type="text" name="ec_account_code" id="ec_account_code" class="input" /></td>
<td class="status"></td>
</tr>
<tr>
<td> </td>
<td>
<input type="hidden" name="ec_amount" />
<input type="hidden" name="ec_user_id" />
<input type="hidden" name="ec_product_id" />
<input type="hidden" name="ec_product_code" />
<input type="submit" name="submit" id="submit" value="Bezahlung senden" class="button"/></td>
<td class="status"></td>
</tr>
</table>
</form>
</div>
Dann nutze ich ein Java Script um die Bankleizhal zu überprüfen:
HTML:
<script id="validate" type="text/javascript">
$(document).ready(function() {
// validate signup form on keyup and submit
var validator = $("#ec").validate({
rules: {
ec_account_code: {
required: true,
digits: true,
remote: "/alpha/check_account_code/send/"
}
},
messages: {
ec_account_code: {
required: 'Dies ist ein Pflichtfeld.',
digits: "Bitte nur Zahlen eingeben.",
remote: "Diese Bankleitzahl ist nicht korrekt."
}
},
// the errorPlacement has to take the table layout into account
errorPlacement: function(error, element) {
if ( element.is(":radio") )
error.appendTo( element.parent().next().next() );
else if ( element.is(":checkbox") )
error.appendTo ( element.next() );
else
error.appendTo( element.parent().next() );
},
// specifying a submitHandler prevents the default submit, good for the demo
submitHandler: function() {
var dataStr = $("#ec").serialize();
$.ajax({
type: "POST",
url: "/alpha/ec/send/",
data: dataStr,
success: function(del){
$('#ecbox').slideUp(500, function() {
$('#success').slideDown(500);
});
}
});
return false;
},
// set this class to error-labels to indicate valid fields
success: function(label) {
// set as text for IE
label.html(" ").addClass("checked");
}
});
});
</script>
Der PHP Code zum abgleichen sieht wie folgt aus:
PHP:
include ("../settings.php");
include ("../connect.php");
$ec_account_code = trim(strtolower($_POST['ec_account_code']));
$ec_account_code = mysql_escape_string($ec_account_code);
$sql = "SELECT * FROM bank WHERE BANKLEITZAHL='".$ec_account_code."' LIMIT 1";
$query = mysql_query($sql);
$num = mysql_num_rows($query);
if ($num > 0) {
return true;
} else
return false;
Das Feld wird erfolgreich auf Zahlen geprüft, und es wird auch als Pflichtfeld markiert. Leider gibt mir das Skript grundsätzlich aus: "Diese Bankleitzahl ist nicht korrekt." Auch wenn ich eine korrekte Bankleitzahl eingebe. Wo mache ich einen Fehler?
Gruß