Hallo zusammen.
Ich hoffe diese Frage war hier noch nicht, habe aber nicht wirklich etwas gefunden. ansonsten sorry (weiss wie eklig das sonst ist :-D ).
folgendes problem stellt sich.
ich mache mit einem Formular eine Registrierung. Für den Usernamen mach ich eine Live-Abfrage via Ajax auf die Datenbank ob der Name schon besetzt ist. Das Feld färbt sich Live rot ein und es steht eine meldung (name frei, oder name besetzt).
ist der name besetzt und man klickt auf registrieren bleibt im MF das Feld rot und es geht nicht zum registrieren. beim IE färbt sich das feld beim klick auf registrieren wieder weiss und es würde theoretisch gehen, einen zweiten user mit demselben namen zum haben. weiss jemand woran das liegen kann? habe schon x stunden nun probiert und es will nicht wirklich.
die seite kann man auf http://www.bazzodelago.ch/registrieren.php sehen, der code vom JS/Ajax:
vielen dank für die hilfe.
lg
Ich hoffe diese Frage war hier noch nicht, habe aber nicht wirklich etwas gefunden. ansonsten sorry (weiss wie eklig das sonst ist :-D ).
folgendes problem stellt sich.
ich mache mit einem Formular eine Registrierung. Für den Usernamen mach ich eine Live-Abfrage via Ajax auf die Datenbank ob der Name schon besetzt ist. Das Feld färbt sich Live rot ein und es steht eine meldung (name frei, oder name besetzt).
ist der name besetzt und man klickt auf registrieren bleibt im MF das Feld rot und es geht nicht zum registrieren. beim IE färbt sich das feld beim klick auf registrieren wieder weiss und es würde theoretisch gehen, einen zweiten user mit demselben namen zum haben. weiss jemand woran das liegen kann? habe schon x stunden nun probiert und es will nicht wirklich.
die seite kann man auf http://www.bazzodelago.ch/registrieren.php sehen, der code vom JS/Ajax:
PHP:
<script type="text/javascript" language="javascript">
var http_request = false;
function req() {
if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
return http_request;
}
function neuladen(url) {
req();
if (checkform()) {
document.getElementById('weg').style.visibility = 'hidden';
var daten1 = document.forms[0].elements[0].value;
document.forms[0].elements[0].value = "";
var daten2 = document.forms[0].elements[1].value;
document.forms[0].elements[1].value = "";
var daten3 = document.forms[0].elements[2].value;
document.forms[0].elements[2].value = "";
var daten4 = document.forms[0].elements[3].value;
document.forms[0].elements[3].value = "";
var daten5 = document.forms[0].elements[4].value;
document.forms[0].elements[4].value = "";
if (!http_request) {
alert('XMLHTTP nicht verfügbar!');
return false;
}
http_request.onreadystatechange = schreibInhalt;
http_request.open('POST', url, true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send("a="+daten1+"&b="+daten2+"&c="+daten3+"&d="+daten4+"&e="+daten5+"&x=richtig");
}
}
function schreibInhalt() {
if (http_request.readyState == 4) {
document.getElementById("containerregister").innerHTML = http_request.responseText;
http_request = ""
}
}
function testusername() {
req();
if (!http_request) {
alert('XMLHTTP nicht verfügbar!');
return false;
}
http_request.onreadystatechange = schreibInhaltUsername;
http_request.open('GET', 'check_username.php?q='+document.forms[0].username.value, true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send(null);
}
function schreibInhaltUsername() {
if (http_request.readyState == 4) {
if(document.forms[0].username.value == "")
{ document.getElementById('usercheck').innerHTML = "";}
else if(http_request.responseText == '<img src="images/ampel_rot.jpg"> Name vergeben')
{ document.forms[0].elements[2].style.backgroundColor = '#F0AA9F';
document.getElementById('usercheck').innerHTML = http_request.responseText;
document.getElementByName('usercheck').innerHTML = http_request.responseText;}
else { document.getElementById('usercheck').innerHTML = http_request.responseText;
document.forms[0].elements[2].style.backgroundColor = '#FFFFFF';}
http_request = ""
}
}
function oberusernametest(){
if(document.forms[0].elements[2].value=="" || document.getElementById('usercheck').innerHTML == '<img src="images/ampel_rot.jpg"> Name vergeben'|| document.forms[0].elements[2].style.backgroundColor == '#F0AA9F')
{ unruck = true;
return unruck;}
else if(document.forms[0].elements[2].style.backgroundColor = '#FFFFFF')
{ unruck = false;
return unruck;}
else { unruck = false;
return unruck;}
}
function checkform(){
check = true;
if (document.forms[0].elements[0].value==""){
document.forms[0].elements[0].style.backgroundColor = '#F0AA9F';
check = false;
}
else {
document.forms[0].elements[0].style.backgroundColor = '#FFFFFF';
}
if (document.forms[0].elements[1].value==""){
document.forms[0].elements[1].style.backgroundColor = '#F0AA9F';
check = false;
}
else {
document.forms[0].elements[1].style.backgroundColor = '#FFFFFF';
}
if (oberusernametest()){
document.forms[0].elements[2].style.backgroundColor = '#F0AA9F';
check = false;
}
else {
document.forms[0].elements[2].style.backgroundColor = '#FFFFFF';
}
if (document.forms[0].elements[3].value==""){
document.forms[0].elements[3].style.backgroundColor = '#F0AA9F';
check = false;
}
else {
document.forms[0].elements[3].style.backgroundColor = '#FFFFFF';
}
reg = new RegExp('^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$');
if (document.forms[0].elements[4].value == "" || reg.test(document.forms[0].elements[4].value) == false){
document.forms[0].elements[4].style.backgroundColor = '#F0AA9F';
check = false;
}
else {
document.forms[0].elements[4].style.backgroundColor = '#FFFFFF';
}
return check;
}
</script>
vielen dank für die hilfe.
lg