Div ein/ausblenden
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
adresse
benutzer
benutzername
blocken
code
display
ereignis
fehler
header
index
login
meldung
null
position
post
problem
set
stimmen
test
wiederholen
-
hi
ich bin eigendlich noch total neu in javascript und hab auch eigendlich keine ahnung davon.
ich hab ein script bei dem ein Div-layer mit einem anmeldeformular über einen link ein und aus geblendet werden kann.
funktioniert auch soweit gut das problem ist nur das die meldungen dann nicht angezeigt werden.
function toggleMe(a){ var e=document.getElementById(a); if(!e)return true; if(e.style.display=="block"){ e.style.display="none" } else { e.style.display="block" } return true; }
#JoinBox { height:auto; left: 40%; position:absolute; border:1px solid gray; background-color:#F0F0F0; margin:0; padding:0; display:none; } #JoinBox_Tools { width:99%; position: absolute; padding:2px; text-align:right; background-color:grey; color:white; font-size:9px; } #Error { position:absolute; top:20%; left:27px; width:200px; text-align:center; color:#FF0000; display:none; } #Massage { position:absolute; top:20%; left:27px; width:200px; text-align:center; color:#00AA00; display:none; }
<!-- Join --> <div id="JoinBox"> <div id="JoinBox_Tools" onmousedown="dragstart(JoinBox)"> <a onclick="return toggleMe('JoinBox')" href="javascript:void(0)">close</a> </div> <br> <?php if(!isset($_POST['Reg'])) { ?> <form action="<?php $PHP_SELF ?>" method="post"> <table> <tr> <td>Benutzername*</td> <td><input name="username" type="text" class="text"></td> </tr> <tr> <td>Passwort*</td> <td><input name="password" type="password" class="text"></td> </tr> <tr> <td>Passwort wiederholen*</td> <td><input name="password2" type="password" class="text"></td> </tr> <tr> <td>E-Mail*</td> <td><input name="mail" type="text" class="text"></td> </tr> <tr> <td>ICQ</td> <td><input name="icq" type="text" class="text"></td> </tr> <tr> <td>Skype</td> <td><input name="Skype" type="text" class="text"></td> </tr> <tr> <td>MSN</td> <td><input name="MSN" type="text" class="text"></td> </tr> <tr> <td><input name="Reg" value="anlegen" class="button" type="submit"></td> </tr> </table> </form> </div> <?php }elseif(!isset($_POST['username']) || $_POST['username'] == ""){ echo '<p id="Error">Bitte gib noch einen Username ein!<br><a href="anmelden.php">Zurück</a></p>'; }elseif(!isset($_POST['mail']) || $_POST['mail'] == ""){ echo '<p id="Error">Bitte Gib eine E-Mail Adresse ein.<br><a href="anmelden.php">Zurück</a></p>'; }elseif(!isset($_POST['password']) || $_POST['password'] == "") { echo '<p id="Error">Gib bitte ein Passwort ein.<br><a href="anmelden.php">Zurück</a></p>'; }elseif($_POST['password'] != $_POST['password2']) { echo '<p id="Error">Die Passwöter stimmen nicht überein.<br><a href="anmelden.php">Zurück</a></p>'; }else{ $username = $_POST['username']; $icq = $_POST['icq']; $Skype = $_POST['Skype']; $MSN = $_POST['MSN']; $pass = $_POST['password2']; $Mail = $_POST['mail']; $insert = mysql_query("INSERT INTO User SET nickname = '$username', passwort = '$pass', mail = '$Mail', icq = '$icq', msn = '$MSN', skype = '$Skype', lastconnect = '0'") OR die(mysql_error()); if($insert) { echo '<p id="Massage">Der neue Benutzer wurde erfolgreich angelegt.<br><a href="index.php">zum Login</a></p>'; }else{ echo '<p id="Error">Beim Anlegen des neuen Benutzers trat leider ein Fehler auf.<br><a href="anmelden.php">Zurück</a></p>'; } } ?>
kann da jemand helfen?
Beitrag zuletzt geändert: 3.1.2010 17:07:36 von raff -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich weiß nicht genau ob es Daran liegt, aber wenn
nicht erfüllt ist wird deine DIV-Box nie beendet.if(!isset($_POST['Reg']))
Aber warum nimmst du hier JS? Wenn du schon PHP zur Verführung hast kann man Meldungen, die eh bei einem Seitenladen generiert werden auch hiermit anzeigen bzw nicht anzeigen.
Ich würde JS nur für sachen benutzen die dynamisch sein müssen und die Seite nicht neu geladen werden Darf / soll -
das hier bitte löschen! ich habe etwas überlesen! sorry!!
==== edit ==== DOCH NICHT LÖSCHEN :o)
das sollte irgendwie so gehen (und so sieht es aus):
also das ist dann so, dass ich - wenns vorhanden die warnung unbedingt mit form ausgebe (erspart ein click! im form fehlt dann die möglichkeit, dass die werte die der user schon eingegeben hat auch beibehalten werden! das habe ich bei "Benutzername" nachgehlt (den rest musst schon selber nachholen :o)<!-- Join --> <?php // nur test: echo "<pre><strong>\$_POST (nur test):</strong>\n".print_r ($_POST,1)."</pre>"; ?> <div id="JoinBox"> <div id="JoinBox_Tools" onmousedown="dragstart(JoinBox)"> <a onclick="return toggleMe('JoinBox')" href="javascript:void(0)">close</a> </div> <br> <?php if(isset($_POST['Reg'])) { if(!isset($_POST['username']) || $_POST['username'] == ""){ echo '<p id="Error">Bitte gib noch einen Username ein!<br><a href="anmelden.php">Zurück</a></p>'; }elseif(!isset($_POST['mail']) || $_POST['mail'] == ""){ echo '<p id="Error">Bitte Gib eine E-Mail Adresse ein.<br><a href="anmelden.php">Zurück</a></p>'; }elseif(!isset($_POST['password']) || $_POST['password'] == "") { echo '<p id="Error">Gib bitte ein Passwort ein.<br><a href="anmelden.php">Zurück</a></p>'; }elseif($_POST['password'] != $_POST['password2']) { echo '<p id="Error">Die Passwöter stimmen nicht überein.<br><a href="anmelden.php">Zurück</a></p>'; }else{ $username = $_POST['username']; $icq = $_POST['icq']; $Skype = $_POST['Skype']; $MSN = $_POST['MSN']; $pass = $_POST['password2']; $Mail = $_POST['mail']; echo "<p>da kommt natürlich mysql-query!!!</p>"; //$insert = mysql_query("INSERT INTO User SET nickname = '$username', passwort = '$pass', mail = '$Mail', icq = '$icq', msn = '$MSN', skype = '$Skype', lastconnect = '0'") OR die(mysql_error()); //if($insert) { // echo '<p id="Massage">Der neue Benutzer wurde erfolgreich angelegt.<br><a href="index.php">zum Login</a></p>'; //}else{ // echo '<p id="Error">Beim Anlegen des neuen Benutzers trat leider ein Fehler auf.<br><a href="anmelden.php">Zurück</a></p>'; // } } } echo "<p>und nacher sollte auch weitergehen!</p>"; ?> <form action="<?php echo ".{$_SERVER['PHP_SELF']}" ?>" method="post"> <!-- DAS IST EINFACH FALSCH!!! <form action="<?php $PHP_SELF ?>" method="post"> --> <table> <tr> <td>Benutzername*</td> <td><input name="username" type="text" class="text" value="<?php echo $_POST['username']; ?>"></td> </tr> <tr> <td>Passwort*</td> <td><input name="password" type="password" class="text" value="<?php echo $_POST['password']; ?>"></td> </tr> <tr> <td>Passwort wiederholen*</td> <td><input name="password2" type="password" class="text" value="<?php echo $_POST['password2']; ?>"></td> </tr> <tr> <td>E-Mail*</td> <td><input name="mail" type="text" class="text" value="<?php echo $_POST['mail']; ?>"></td> </tr> <tr> <td>ICQ</td> <td><input name="icq" type="text" class="text"></td> </tr> <tr> <td>Skype</td> <td><input name="Skype" type="text" class="text"></td> </tr> <tr> <td>MSN</td> <td><input name="MSN" type="text" class="text"></td> </tr> <tr> <td><input name="Reg" value="anlegen" class="button" type="submit" onMouseOver="return toggleMe('News')"></td> </tr> </table> </form> </div>
Beitrag zuletzt geändert: 3.1.2010 18:04:26 von czibere -
<?php include ("DB.php"); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <link rel="shortcut icon" type="image/x-icon" href="Bilder/link-icon.png" width="32px" height="32px" /> <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"> <title>DarkFighter</title> <STYLE type="text/css"> #body { background-color:#F0F0F0; } #Page { width:1024px; left: 50%; margin-left: -498px; position: absolute; border:1px solid grey; } #Top { margin:0; padding:0; } #LoginBox { height:auto; float:right; width:250px; margin:0; padding:0; } #News { height:auto; float:left; width:770px; margin:0; padding:0; display:block; } #JoinBox { height:auto; left: 40%; position:absolute; border:1px solid gray; background-color:#F0F0F0; margin:0; padding:0; display:none; } #JoinBox_Tools { width:99%; position: absolute; padding:2px; text-align:right; background-color:grey; color:white; font-size:9px; } #Error { position:absolute; top:20%; left:27px; width:200px; text-align:center; color:#FF0000; } #Massage { position:absolute; top:20%; left:27px; width:200px; text-align:center; color:#00AA00; } a:link { color:#080808; text-decoration:none; } a:visited { color:080808; text-decoration:none; } a:hover { font-weight:bold; color:#B2FF1A; text-decoration:none; } input.text { border:1px solid grey; background-color:#F0F0F0; } input.button { border:0px solid #707070; background-color:#9d9d9d; } </STYLE> <!-- JavaScript --> <script type="text/javascript" src="JS.js"> </script> </head> <body id="body" onload="draginit()"> <div id="Page"> <!-- Top --> <div id="Top"> <img src="Bilder/logo.png"> </div> <!-- Right --> <div id="LoginBox"> <img src="Bilder/navigator.png"> <center> <?php if(!isset($_POST['Log'])) { ?> <form action="<?php $PHP_SELF ?>" method="post"> <table> <tr> <td><b>Name:</b></td> </tr> <tr> <td><input name="Name" type="text" class="text"></td> </tr> <tr> <td><b>Passwort:</b></td> </tr> <tr> <td><input name="Passwort" type="password" class="text"></td> </tr> <tr> <td><input value="Login" name="Log" type="submit" class="button" onclick="return toggleMe('LoginBox')"></td> </tr> <tr> <td><a href="PasswortVergessen.php">Passwort vergessen?</a></td> </tr> <tr> <td><a onclick="return toggleMe('JoinBox')" href="javascript:void(0)">Registrieren</a></td> </tr> </table> </form> </center> <?php }elseif(!isset($_POST['Name']) || $_POST['Name'] == ""){ header ("Location: index.php"); }else{ session_start (); $Name = $_POST['Name']; $sql = "SELECT ". " * ". "FROM ". "User ". "WHERE ". "(Nickname like '".$Name."') AND ". "(Passwort = '".($_REQUEST["Passwort"])."')"; $result = mysql_query ($sql); if (mysql_num_rows ($result) > 0){ $data = mysql_fetch_array ($result); $_SESSION["user_id"] = $data["id"]; $_SESSION["user_nickname"] = $data["nickname"]; $_SESSION["user_pw"] = $data["passwort"]; $_SESSION["user_mail"] = $data["mail"]; header ("location: user_index.php"); }else{ header ("Location: index.php?Error=1"); } } ?> </div> <!-- Left --> <div id="News"> Test </div> <!-- Join --> <div id="JoinBox"> <div id="JoinBox_Tools" onmousedown="dragstart(JoinBox)"> <a onclick="return toggleMe('JoinBox')" href="javascript:void(0)">close</a> </div> <br> <?php if(!isset($_POST['Reg'])) { ?> <form action="<?php $PHP_SELF ?>" method="post"> <table> <tr> <td>Benutzername*</td> <td><input name="username" type="text" class="text"></td> </tr> <tr> <td>Passwort*</td> <td><input name="password" type="password" class="text"></td> </tr> <tr> <td>Passwort wiederholen*</td> <td><input name="password2" type="password" class="text"></td> </tr> <tr> <td>E-Mail*</td> <td><input name="mail" type="text" class="text"></td> </tr> <tr> <td>ICQ</td> <td><input name="icq" type="text" class="text"></td> </tr> <tr> <td>Skype</td> <td><input name="Skype" type="text" class="text"></td> </tr> <tr> <td>MSN</td> <td><input name="MSN" type="text" class="text"></td> </tr> <tr> <td><input name="Reg" value="anlegen" class="button" type="submit"></td> </tr> </table> </form> <?php }elseif(!isset($_POST['username']) || $_POST['username'] == ""){ echo '<p id="Error">Bitte gib noch einen Username ein!<br><a href="anmelden.php">Zurück</a></p>'; }elseif(!isset($_POST['mail']) || $_POST['mail'] == ""){ echo '<p id="Error">Bitte Gib eine E-Mail Adresse ein.<br><a href="anmelden.php">Zurück</a></p>'; }elseif(!isset($_POST['password']) || $_POST['password'] == "") { echo '<p id="Error">Gib bitte ein Passwort ein.<br><a href="anmelden.php">Zurück</a></p>'; }elseif($_POST['password'] != $_POST['password2']) { echo '<p id="Error">Die Passwöter stimmen nicht überein.<br><a href="anmelden.php">Zurück</a></p>'; }else{ $username = $_POST['username']; $icq = $_POST['icq']; $Skype = $_POST['Skype']; $MSN = $_POST['MSN']; $pass = $_POST['password2']; $Mail = $_POST['mail']; $insert = mysql_query("INSERT INTO User SET nickname = '$username', passwort = '$pass', mail = '$Mail', icq = '$icq', msn = '$MSN', skype = '$Skype', lastconnect = '0'") OR die(mysql_error()); if($insert) { echo '<p id="Massage">Der neue Benutzer wurde erfolgreich angelegt.<br><a href="index.php">zum Login</a></p>'; }else{ echo '<p id="Error">Beim Anlegen des neuen Benutzers trat leider ein Fehler auf.<br><a href="anmelden.php">Zurück</a></p>'; } } ?> </div> </div> </body> </html>
und
// ShowHidden function toggleMe(a){ var e=document.getElementById(a); if(!e)return true; if(e.style.display=="block"){ e.style.display="none" } else { e.style.display="block" } return true; } //Moveabel Div var dragobjekt = null; var dragx = 0; var dragy = 0; var posx = 0; var posy = 0; function draginit() { document.onmousemove = drag; document.onmouseup = dragstop; } function dragstart(element) { dragobjekt = element; dragx = posx - dragobjekt.offsetLeft; dragy = posy - dragobjekt.offsetTop; } function dragstop() { dragobjekt=null; } function drag(ereignis) { posx = document.all ? window.event.clientX : ereignis.pageX; posy = document.all ? window.event.clientY : ereignis.pageY; if(dragobjekt != null) { dragobjekt.style.left = (posx - dragx) + "px"; dragobjekt.style.top = (posy - dragy) + "px"; } }
das ist jetzt mal die ganze datei.
also es soll sich wenn man auf registrieren klickt ein verschiebbarer div-layer öffnen mit einem anmeldeforumlar.
das problem ist nur das die meldungen nirgends ausgegeben werden
(die anmeldung funktioniert und wenn benötigte daten fehlen dann wird kein user erstellt) -
ob es verschiebbar ist ode nicht ist ein sekundäres problem. die logik ist falsch dahinter. schau meine vorige posting an. es gab nichts vorher dort weil ich mich vertan habe. aber wie jetzt gestaltet ist, könnte weiterhelfen.
-
ok danke.
hab nurnoch iwie das problem das er nich auf http://localhost/DF/index.php sondern http://localhost/DF/DF/index.php zugreifen will
das is iwie etwas komisch ... weiß jemand wie ich das weg bekomme? -
poste da nur den kod von dem betroffenen form. so kann man besser raten °~^
eventuell kannst statt
so probieren<form action="<?php echo ".<zieldokument>"; ?>" method="post">
(man beachte die punkte vor '<zieldokument>').<form action="<?php echo "..<zieldokument>"; ?>" method="post">
Beitrag zuletzt geändert: 3.1.2010 19:10:06 von czibere -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage