Avatar billede crabber Nybegynder
30. august 2008 - 01:18 Der er 1 løsning

Problemer med at submitte form?

Jeg har et login form hvor jeg har fundet noget javascript som håndtere mit password felt.

Javascriptet ændre mit input felt type fra text til password. SÅ jeg i felte skal skrive "Skriv password her" og når man så skriver i feltet ændre det sig til password felt så man ikke kan se teksten.

Mit problem er nu at min form ikke vil submittet.

Min sider er programmere i php og jeg kalder en login klasse hvor jeg har nogle fejl beskeder som heller ikke kommer frem.

Jeg har prøvet at kalde login functionen fra get og det vil den gerne. Men min fejl besked til et ikke udfyld brugernavn vil vise sig.

Håber der er nogen som har en løsning på mit problem.

KODEN------------------------------------------------------------

<?php
session_start();

include_once('../includes/config.inc.php');
include_once('admin_includes/admin_function.php');
include_once('../includes/function.php');
include_once('fckeditor/fckeditor.php');
load_class('../includes/class/');

//LANGUAGE SETTINGS
getDefaultLang(DB_SITE.'admin_lang','admin_lang');
includeLang('admin_language/',$_SESSION['admin_lang']);
if($_GET['action']=='logout'){
    $log = new Logging();
    $log->LogUd('../');
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title><?php echo siteSetting('web_title'); ?> Administation - En EasyCMS Løsning</title>
<link href="style/easycms_style.css" rel="stylesheet" type="text/css" media="screen" />
<!--[if IE 6]> <link rel="stylesheet" href="style/easycms_style_ie6.css" type="text/css" media="screen" /><![endif]-->
<!--[if IE 7]> <link rel="stylesheet" href="style/easycms_style_ie7.css" type="text/css" media="screen" /><![endif]-->
<script type="text/javascript">

// Note: I recommend you use a more comprehensive event management script for
// production (aka "live") pages.
// Dean Edwards' event manipulation functions is a good example. You can find
// them here: http://dean.edwards.name/weblog/2005/10/add-event2/
var LoadHandler = {
  handlers:[],
  add:function(fn){
    if(window.onload!=LoadHandler.theHandler) LoadHandler._push(window.onload);
    LoadHandler._push(fn);
    window.onload=LoadHandler.theHandler;
  },
  _push:function(fn){
    if(typeof(fn)!='function') return;
    LoadHandler.handlers[LoadHandler.handlers.length]=fn;
  },
  theHandler:function(){
    var handlers=LoadHandler.handlers,i=-1,fn;
    while(fn=handlers[++i]) fn();
  }
}

// Example 2 (JS part 1)
function changeInputType(
  oldElm, // a reference to the input element
  iType, // value of the type property: 'text' or 'password'
  iValue, // the default value, set to 'password' in the demo
  blankValue, // true if the value should be empty, false otherwise
  noFocus) {  // set to true if the element should not be given focus
  if(!oldElm || !oldElm.parentNode || (iType.length<4) ||
    !document.getElementById || !document.createElement) return;
  var isMSIE=/*@cc_on!@*/false; //http://dean.edwards.name/weblog/2007/03/sniff/
  if(!isMSIE){
    var newElm=document.createElement('input');
    newElm.type=iType;
  } else {
    var newElm=document.createElement('span');
    newElm.innerHTML='<input type="'+iType+'" name="'+oldElm.name+'">';
    newElm=newElm.firstChild;
  }
  var props=['name','id','className','size','tabIndex','accessKey'];
  for(var i=0,l=props.length;i<l;i++){
    if(oldElm[props[i]]) newElm[props[i]]=oldElm[props[i]];
  }
  newElm.onfocus=function(){return function(){
    if(this.hasFocus) return;
    var newElm=changeInputType(this,'password',iValue,
      (this.value.toLowerCase()==iValue.toLowerCase())?true:false);
    if(newElm) newElm.hasFocus=true;
  }}();
  newElm.onblur=function(){return function(){
    if(this.hasFocus)
    if(this.value=='' || (this.value.toLowerCase()==iValue.toLowerCase())) {
      changeInputType(this,'text',iValue,false,true);
    }
  }}();
// hasFocus is to prevent a loop where onfocus is triggered over and over again
  newElm.hasFocus=false;
  // some browsers need the value set before the element is added to the page
  // while others need it set after
  if(!blankValue) newElm.value=iValue;
  oldElm.parentNode.replaceChild(newElm,oldElm);
  if(!isMSIE && !blankValue) newElm.value=iValue;
  if(!noFocus || typeof(noFocus)=='undefined') {
    window.tempElm=newElm;
    setTimeout("tempElm.hasFocus=true;tempElm.focus();",1);
  }
  return newElm;
}


// Example 2 (JS part 2)
LoadHandler.add(function(){
  // Normally I use object detection, however, in this case since I need to
  // detect Konqueror and Safari which don't have unique objects,
  // I will use the user agent string to detect them. Only use this type of
  // detection as a last resort.
  // I'm doing this because example 2 crashes Konqueror 3.4 and Safari 1.0

  var ua=navigator.userAgent.toLowerCase();
  if(!((ua.indexOf('konqueror')!=-1) && /khtml\/3\.[0-4]/.test(ua)) &&
    !(((ua.indexOf('safari')!=-1) && !window.print))) {

      // Set the third value to the text you want to appear in the field.
      changeInputType(document.forms[0].password,'text','<?php echo BACKEND_PASSWORD; ?>',false,true);
  }
});
</script>
</head>
<?php
if(!$_SESSION['user_id']){
    if(isset($_POST['login'])){
        $log = new Logging();
        $log->LogInd($_POST['username'],$_POST['password'],'');
    }
?>
<body class="login">
<div id="login_wrapper">
    <div id="logo"><img src="images/easyCMS_front_logo.jpg" alt="easyCMS - Version 1.0" /></div>
    <div id="login_bg">
            <form action="index.php" method="post" enctype="multipart/form-data">
                <div><img src="images/easyCMS_front_username.jpg" alt="<?php echo BACKEND_USERNAME; ?>" /><input name="username" id="username" type="text" class="inputtext" onfocus="if (value=='<?php echo BACKEND_USERNAME; ?>') {value=''}" onblur="if (value=='') {value='<?php echo BACKEND_USERNAME; ?>'}" value="<?php echo BACKEND_USERNAME; ?>" tabindex="1" /><?php echo $log->mes_user; ?><img src="images/easyCMS_front_spm.jpg" alt="Spm" /></div>
               
                <div class="password"><img src="images/easyCMS_front_password.jpg" alt="<?php echo BACKEND_PASSWORD; ?>" /><input name="password" id="password" type="text" class="inputtext" tabindex="2" /><?php echo $mes_pass; ?><img src="images/easyCMS_front_spm.jpg" alt="Spm" /></div>
               
                <!--<span><input type="checkbox" name="remember" id="remember" />Husk</span>-->
              <input name="login" id="login" type="image" src="<?php echo BACKEND_LOGIN; ?>" tabindex="3" />
            </form>
    </div>
</div>
</body>
<?php } else { ?>
<body class="main">
<div id="wrapper">
        <div id="easycms_header">
            <div id="easycms_header_left">
                <a href="#" id="contact"></a>
                <a href="<?php echo WEB_ADMIN_ADD; ?>" id="home"></a>
                <div id="easycms_loginbar">
                    <p>Logget ind som: <strong><?php echo $_SESSION['user_name']; ?></strong></p>
                </div>
                <a href="?action=logout" id="logud"><?php echo BACKEND_LOGOUT; ?></a>
            </div>
        </div>
        <div id="easycms_menu">
            <?php include_once('admin_menu.php'); ?>
        </div>
    <div id="easycms_content">
      <?php getBackendContent($_GET['page'],$_GET['file']); ?>
    </div>
  <div class="clearboth"></div>
  <div id="easycms_footer">easyCMS  -  www.casperandersen.com  -  copyright 2008</div>
</div>
</body>
<?php } ?>
</html>

KODEN SLUT-------------------------------------------------------

Mvh Casper

ps. Javascriptet jeg har fundet virker i alle browsere. Derfor har jeg brugt dette.
Avatar billede crabber Nybegynder
30. august 2008 - 01:58 #1
Ja så brugte jeg så langt tid på at finde fejlen.. Det kunne være man skulle echo sine fejl beskeder.. Så ville det sikkert virker.

lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester