Avatar billede vicesux Nybegynder
18. maj 2001 - 13:01 Der er 24 kommentarer og
1 løsning

Submit Funktion

Hejsa Jeg har et problem i en submit funktion. Min form ser sådan ud :
<form action=\"opret.php\" method=\"post\" onsubmit=\"return checkOpret(this)\" name=\"formOpret\">

Og submit :
så sådan her ud før :
<input type=\"submit\" name=\"subm\" value=\"Opret Bruger\" class=\"but\" onfocus=blur() tabindex=\"4\">

Så lavede jeg det om til :

<input type=\"image\" src=\"../images/opret2.gif\" onfocus=blur() tabindex=\"4\" document.formOpret.submit();>
Men det virker ikke? Hvad har jeg gjort galt?
Når man klikker på knappen som sker der bare intet og den skriver errors on page i statuslinie når man har trykket.. Plz help :(
Avatar billede Slettet bruger
18. maj 2001 - 13:06 #1
<input type=\"image\" src=\"../images/opret2.gif\" onfocus=blur() tabindex=\"4\">
Avatar billede Slettet bruger
18. maj 2001 - 13:08 #2
Jeg ved ikke hvor du fik \"document.formOpret.submit();\" fra, men det er ikke nødvendigt når du kun har en knap som billede..

har du derimod 2 knapper du ønsker at lave til billeder kræver det lidt javascript.
Avatar billede vicesux Nybegynder
18. maj 2001 - 13:15 #3
Beklager men det virkede ikke!

Her er hele formen :
<form action=\"opret.php\" method=\"post\" onsubmit=\"return checkOpret(this)\" name=\"formOpret\">
<table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">
  <tr>
    <td align=\"right\"><font size=2 face=arial><img src=\"../images/username.gif\" width=\"83\" height=\"19\"></font></td>
    <td><input type=\"brugernavn\" name=\"brugernavn\" maxlength=\"50\" class=\"but\" size=\"30\" tabindex=\"1\"></td>
  </tr>
  <tr>
    <td align=\"right\"><font size=2 face=arial><img src=\"../images/password.gif\" width=\"83\" height=\"19\"></td>
    <td><input type=\"password\" name=\"kodeord\" maxlength=\"50\" class=\"but\" size=\"30\" tabindex=\"2\"></td>
  </tr>
  <tr>
    <td align=\"right\"><font size=2 face=arial><img src=\"../images/gentag.gif\" width=\"100\" height=\"26\"></td>
    <td><input type=\"password\" name=\"kodeord1\" maxlength=\"50\" class=\"but\" size=\"30\" tabindex=\"3\"></td>
  </tr>
  <tr>
    <td></td>
    <td>
      <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">
        <tr>
          <td align=\"left\"><input type=\"image\" src=\"../images/opret2.gif\" onfocus=blur() tabindex=\"4\"> <a href=\"opret.php\"><img src=\"../images/nulstil.gif\" width=\"100\" height=\"29\" border=\"0\"></a></td>
          </form>
Avatar billede Slettet bruger
18. maj 2001 - 13:20 #4
prøv at ændre din onfocus til

onfocus=\"this.blur()\"

der er ikke nogen fejl i din form, men måske er der i din valideringsfunktion...
Avatar billede Slettet bruger
18. maj 2001 - 13:22 #5
og hvis det ikke virker at ændre din submit til

<input type=\"image\" src=\"../images/opret2.gif\" onfocus=\"this.blur()\" onclick=\"return checkOpret(this);\" tabindex=\"4\">
Avatar billede vicesux Nybegynder
18. maj 2001 - 13:23 #6
Nops hellere ikke der hjalp det... Denne fejl er først kommet efter jeg ændrede <input type=\"submit\" name=\"subm\" value=\"Opret Bruger\" class=\"but\" onfocus=blur() tabindex=\"4\">

til :

<input type=\"image\" src=\"../images/opret2.gif\" onfocus=blur() tabindex=\"4\" document.formOpret.submit();>

Derfor ved jeg det er i den der er fejl, fordi hvis jeg lægger den anden på igen så virker det.. Måske er der en anden måde og lave det med gfx på?
Avatar billede vicesux Nybegynder
18. maj 2001 - 13:24 #7
Ok prøver lige det sidste du skrev
Avatar billede vicesux Nybegynder
18. maj 2001 - 13:25 #8
Ok før skete der ikke noget men nu skriver den errors on page i status linie når jeg klikker på ok
Avatar billede Slettet bruger
18. maj 2001 - 13:27 #9
2 sek... finder lige noget til dig.

Indsættes et sted i <BODY>:

<SCRIPT TYPE=\"text/javascript\">
<!--
var resetRolls = new Object();

function resetimage(src)
{
this.src=src;
this.confirm=true;
this.alt=\"Reset\";
this.write=resetimage_write;
}

function resetimage_write()
{
document.write(\'<A \');
if (this.rollover)
    {
    if (! this.name)
        {
        alert(\'to create a rollover you must give the image a name\');
        return;
        }

    resetRolls[this.name] = new Object();
    resetRolls[this.name].over = new Image();
    resetRolls[this.name].over.src=this.rollover;
    resetRolls[this.name].out = new Image();
    resetRolls[this.name].out.src=this.src;
    document.write(
        \' onMouseOver=\"if (document.images)document.images[\\\'\' +
        this.name + \'\\\'].src=resetRolls[\\\'\' + this.name + \'\\\'].over.src\"\' +
        \' onMouseOut=\"if (document.images)document.images[\\\'\' +
        this.name + \'\\\'].src=resetRolls[\\\'\' + this.name + \'\\\'].out.src\"\'
        );
    }
document.write(\' HREF=\"java script:\');
if (this.confirm)
document.write(
    \'document.forms[\' +
    (document.forms.length - 1) + \'].reset();void(0);\">\');
document.write(\'<IMG SRC=\"\' + this.src + \'\" ALT=\"Ryd felter\"\');
document.write(\' BORDER=0\');
if (this.name)document.write(\' NAME=\"\' + this.name + \'\"\');
if (this.height)document.write(\' HEIGHT=\' + this.height);
if (this.width)document.write(\' WIDTH=\' + this.width);
if (this.otheratts)document.write(\' \'+ this.otheratts);
document.write(\'></A>\');
}
//-->
</SCRIPT>


Indsættes der hvor knapperne skal være:

<input type=\"Image\" alt=\"Start søgning\" name=\"Start søgning\" src=\"pix/soeg.gif\" border=\"0\">&nbsp;
<SCRIPT TYPE=\"text/javascript\">
<!--
var ri = new resetimage(\"pix/clear.gif\");
ri.write();
//-->
</SCRIPT>
<NOSCRIPT><INPUT TYPE=\"RESET\"></NOSCRIPT>

Ret bøvlet, men så får du også en rigtig resetknap...*S*
Avatar billede vicesux Nybegynder
18. maj 2001 - 13:29 #10
Her er hele scriptet jeg fattede nemlig ikke den sidste

:
<?php

if($HTTP_POST_VARS){
foreach($HTTP_POST_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

if($HTTP_COOKIE_VARS){
foreach($HTTP_COOKIE_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

if($HTTP_GET_VARS){
foreach($HTTP_GET_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

if($HTTP_SERVER_VARS){
foreach($HTTP_SERVER_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

if($HTTP_ENV_VARS){
foreach($HTTP_ENV_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}


function cleanUser($result) {
  $result = Eregi_replace(\"[<>]\", \"\", $result);
  $result = htmlentities($result);
  Return $result;
}
//[<>\\\'\\^\\´\\`\\/\\\\]
if ($subm) {
  if (!eregi(\"[<>\\\'\\^\\´\\`\\/\\\\]\", $brugernavn)) {
    $brugernavn = addslashes($brugernavn);
    $crypt_pass = md5($kodeord);
    $dato = time();
    $navn_farve = \"000000\";
    $tekst_farve = \"000000\";
    $ip = $GLOBALS[\"REMOTE_ADDR\"];
    $status = 1;
include(\"db.inc.php\");
    $query = mysql_query(\"SELECT bruger FROM chat_users WHERE bruger=\'$brugernavn\'\");
    if (!mysql_num_rows($query)) {
      mysql_query(\"INSERT INTO chat_users (bruger, pass, crypt_pass, dato, navn_farve, tekst_farve,  log_ip, status, last_login)  VALUES (\'$brugernavn\', \'$kodeord\', \'$crypt_pass\', \'$dato\', \'$navn_farve\', \'$tekst_farve\',\'$ip\', \'$status\', \'$dato\')\") or die(mysql_error());
      Mysql_Close();
      header(\"Location: index.php\");
      Exit();
    } else {
      $fejl = \"Brugernavnet findes allerede\";
    }
  } else {
    $fejl = \"Ugyldig brugernavn\";
  }
}
 
?>
<html>
<head>
<title>Opret Ny Bruger</title>

  <div align=\"center\"><img src=\"../images/opret.gif\" width=\"165\" height=\"29\"></div><br>
<script language=\"JavaScript1.2\">
<!--
function checkOpret(frm) {
  if (frm.brugernavn.value == \'\') {alert(\'Chatten : Husk at skrive brugernavn\'); frm.brugernavn.select(); frm.brugernavn.focus(); return false;}
  if (frm.kodeord.value == \'\') {alert(\'Chatten : Husk at skrive et kodeord\'); frm.kodeord.select(); frm.kodeord.focus(); return false;}
  if (frm.kodeord1.value == \'\') {alert(\'Chatten : Husk at skrive dit kodeord igen\'); frm.kodeord1.select(); frm.kodeord1.focus(); return false;}
  if (frm.kodeord.value != frm.kodeord1.value) {alert(\'Chatten : De 2 kodeord er ikke ens\'); frm.kodeord.select(); frm.kodeord.focus(); return false;}
  else {return true;}
}
//-->
</script>
<link href=\"phpuni.css\" REL=\"stylesheet\" type=\"text/css\">
</head>


        <?php
if (isset($fejl)) {
  echo \"<font color=000000><b>Chatten : </b>\".$fejl.\"</font>\";
} else {
  Echo \"<br><br>\";
}
?>
<center>Du skal nu oprette en bruger! <br>Du skal skrive dit kodeord 2 gange af sikkerhedsmæssige årsager!</center
<form action=\"opret.php\" method=\"post\" onsubmit=\"return checkOpret(this)\" name=\"formOpret\">
<table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">
  <tr>
    <td align=\"right\"><font size=2 face=arial><img src=\"../images/username.gif\" width=\"83\" height=\"19\"></font></td>
    <td><input type=\"brugernavn\" name=\"brugernavn\" maxlength=\"50\" class=\"but\" size=\"30\" tabindex=\"1\"></td>
  </tr>
  <tr>
    <td align=\"right\"><font size=2 face=arial><img src=\"../images/password.gif\" width=\"83\" height=\"19\"></td>
    <td><input type=\"password\" name=\"kodeord\" maxlength=\"50\" class=\"but\" size=\"30\" tabindex=\"2\"></td>
  </tr>
  <tr>
    <td align=\"right\"><font size=2 face=arial><img src=\"../images/gentag.gif\" width=\"100\" height=\"26\"></td>
    <td><input type=\"password\" name=\"kodeord1\" maxlength=\"50\" class=\"but\" size=\"30\" tabindex=\"3\"></td>
  </tr>
  <tr>
    <td></td>
    <td>
      <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">
        <tr>
          <td align=\"left\"><input type=\"image\" src=\"../images/opret2.gif\" onfocus=\"this.blur()\" onclick=\"return checkOpret(this);\" tabindex=\"4\">  <a href=\"opret.php\"><img src=\"../images/nulstil.gif\" width=\"100\" height=\"29\" border=\"0\"></a></td>
          </form>
            <td align=\"right\"></td>
          </form>
        </tr>
      </table>
    </td> 
  </tr>
</table>
</form>

</div>
</body>
</html>

</body>
</html>
Avatar billede vicesux Nybegynder
18. maj 2001 - 13:32 #11
Hvis du gider sætte det ind?

Så kan du også se om du kan finde den fucking submit fejl
Avatar billede Slettet bruger
18. maj 2001 - 13:36 #12
2 sek....
Avatar billede vicesux Nybegynder
18. maj 2001 - 13:45 #13
Ok nu har den bare accepteret mit svar uden mig??

Avatar billede Slettet bruger
18. maj 2001 - 13:55 #14
Du havde en del fejl, blandt andet en center der så således ud: <center

og så op til flere </html> og </form>

men her er den rigtige kode:

<?php

if($HTTP_POST_VARS){
foreach($HTTP_POST_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

if($HTTP_COOKIE_VARS){
foreach($HTTP_COOKIE_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

if($HTTP_GET_VARS){
foreach($HTTP_GET_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

if($HTTP_SERVER_VARS){
foreach($HTTP_SERVER_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

if($HTTP_ENV_VARS){
foreach($HTTP_ENV_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}


function cleanUser($result) {
  $result = Eregi_replace(\"[<>]\", \"\", $result);
  $result = htmlentities($result);
  Return $result;
}
//[<>\\\'\\^\\´\\`\\/\\\\]
if ($subm) {
  if (!eregi(\"[<>\\\'\\^\\´\\`\\/\\\\]\", $brugernavn)) {
    $brugernavn = addslashes($brugernavn);
    $crypt_pass = md5($kodeord);
    $dato = time();
    $navn_farve = \"000000\";
    $tekst_farve = \"000000\";
    $ip = $GLOBALS[\"REMOTE_ADDR\"];
    $status = 1;
include(\"db.inc.php\");
    $query = mysql_query(\"SELECT bruger FROM chat_users WHERE bruger=\'$brugernavn\'\");
    if (!mysql_num_rows($query)) {
      mysql_query(\"INSERT INTO chat_users (bruger, pass, crypt_pass, dato, navn_farve, tekst_farve,  log_ip, status, last_login)  VALUES (\'$brugernavn\', \'$kodeord\', \'$crypt_pass\', \'$dato\', \'$navn_farve\', \'$tekst_farve\',\'$ip\', \'$status\', \'$dato\')\") or die(mysql_error());
      Mysql_Close();
      header(\"Location: index.php\");
      Exit();
    } else {
      $fejl = \"Brugernavnet findes allerede\";
    }
  } else {
    $fejl = \"Ugyldig brugernavn\";
  }
}
 
?>
<html>
<head>
<title>Opret Ny Bruger</title>


<script language=\"JavaScript1.2\">
<!--
function checkOpret(frm) {
  if (frm.brugernavn.value == \'\') {alert(\'Chatten : Husk at skrive brugernavn\'); frm.brugernavn.select(); frm.brugernavn.focus(); return false;}
  if (frm.kodeord.value == \'\') {alert(\'Chatten : Husk at skrive et kodeord\'); frm.kodeord.select(); frm.kodeord.focus(); return false;}
  if (frm.kodeord1.value == \'\') {alert(\'Chatten : Husk at skrive dit kodeord igen\'); frm.kodeord1.select(); frm.kodeord1.focus(); return false;}
  if (frm.kodeord.value != frm.kodeord1.value) {alert(\'Chatten : De 2 kodeord er ikke ens\'); frm.kodeord.select(); frm.kodeord.focus(); return false;}
  else {return true;}
}
//-->
</script>
<link href=\"phpuni.css\" REL=\"stylesheet\" type=\"text/css\">
</head>
<body>
<SCRIPT TYPE=\"text/javascript\">
<!--
var resetRolls = new Object();

function resetimage(src)
{
this.src=src;
this.confirm=true;
this.alt=\"Reset\";
this.write=resetimage_write;
}

function resetimage_write()
{
document.write(\'<A \');
if (this.rollover)
    {
    if (! this.name)
        {
        alert(\'to create a rollover you must give the image a name\');
        return;
        }

    resetRolls[this.name] = new Object();
    resetRolls[this.name].over = new Image();
    resetRolls[this.name].over.src=this.rollover;
    resetRolls[this.name].out = new Image();
    resetRolls[this.name].out.src=this.src;
    document.write(
        \' onMouseOver=\"if (document.images)document.images[\\\'\' +
        this.name + \'\\\'].src=resetRolls[\\\'\' + this.name + \'\\\'].over.src\"\' +
        \' onMouseOut=\"if (document.images)document.images[\\\'\' +
        this.name + \'\\\'].src=resetRolls[\\\'\' + this.name + \'\\\'].out.src\"\'
        );
    }
document.write(\' HREF=\"java script:\');
if (this.confirm)
document.write(
    \'document.forms[\' +
    (document.forms.length - 1) + \'].reset();void(0);\">\');
document.write(\'<IMG SRC=\"\' + this.src + \'\" ALT=\"Ryd felter\"\');
document.write(\' BORDER=0\');
if (this.name)document.write(\' NAME=\"\' + this.name + \'\"\');
if (this.height)document.write(\' HEIGHT=\' + this.height);
if (this.width)document.write(\' WIDTH=\' + this.width);
if (this.otheratts)document.write(\' \'+ this.otheratts);
document.write(\'></A>\');
}
//-->
</SCRIPT>
<div align=\"center\"><img src=\"../images/opret.gif\" width=\"165\" height=\"29\"></div><br>


        <?php
if (isset($fejl)) {
  echo \"<font color=000000><b>Chatten : </b>\".$fejl.\"</font>\";
} else {
  Echo \"<br><br>\";
}
?>
<center>Du skal nu oprette en bruger! <br>Du skal skrive dit kodeord 2 gange af sikkerhedsmæssige årsager!</center>
<form action=\"opret.php\" method=\"post\" onsubmit=\"return checkOpret(this)\" name=\"formOpret\">
<table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">
  <tr>
    <td align=\"right\"><font size=2 face=arial><img src=\"../images/username.gif\" width=\"83\" height=\"19\"></font></td>
    <td><input type=\"brugernavn\" name=\"brugernavn\" maxlength=\"50\" class=\"but\" size=\"30\" tabindex=\"1\"></td>
  </tr>
  <tr>
    <td align=\"right\"><font size=2 face=arial><img src=\"../images/password.gif\" width=\"83\" height=\"19\"></td>
    <td><input type=\"password\" name=\"kodeord\" maxlength=\"50\" class=\"but\" size=\"30\" tabindex=\"2\"></td>
  </tr>
  <tr>
    <td align=\"right\"><font size=2 face=arial><img src=\"../images/gentag.gif\" width=\"100\" height=\"26\"></td>
    <td><input type=\"password\" name=\"kodeord1\" maxlength=\"50\" class=\"but\" size=\"30\" tabindex=\"3\"></td>
  </tr>
  <tr>
    <td></td>
    <td>
      <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">
        <tr>
          <td align=\"left\"><input type=\"Image\" alt=\"Start søgning\" name=\"Start søgning\" onfocus=\"this.blur()\" src=\"../images/opret2.gif\" tabindex=\"4\" border=\"0\">&nbsp;
<SCRIPT TYPE=\"text/javascript\">
<!--
var ri = new resetimage(\"../images/nulstil.gif\");
ri.write();
//-->
</SCRIPT>
<NOSCRIPT><INPUT TYPE=\"RESET\"></NOSCRIPT></form>
            <td align=\"right\"></td>
        </tr>
      </table>
    </td> 
  </tr>
</table>
</div>
</body>
</html>
Avatar billede Slettet bruger
18. maj 2001 - 14:02 #15
Iøvrigt får man ikke en alert hvis man ikke har indtastet ens passwords..

Det kan dette script:

pw1 = formOpret.password1.value;
pw2 = formOpret.password2.value;

if (pw1 != pw2) {
alert (\"\\nDu skal indtaste det samme password i begge felterne.\")
password1.field.focus();
return false;
}
else return true;
}

det skal indsættes lige efter

  if (frm.kodeord.value != frm.kodeord1.value) {alert(\'Chatten : De 2 kodeord er ikke ens\'); frm.kodeord.select(); frm.kodeord.focus(); return false;}
Avatar billede Slettet bruger
18. maj 2001 - 14:04 #16
Nu roder jeg...

hele check funktionen skal se således ud:

<script language=\"JavaScript1.2\">
<!--
function checkOpret(frm) {
  if (frm.brugernavn.value == \'\') {alert(\'Chatten : Husk at skrive brugernavn\'); frm.brugernavn.select(); frm.brugernavn.focus(); return false;}
  if (frm.kodeord.value == \'\') {alert(\'Chatten : Husk at skrive et kodeord\'); frm.kodeord.select(); frm.kodeord.focus(); return false;}
  if (frm.kodeord1.value == \'\') {alert(\'Chatten : Husk at skrive dit kodeord igen\'); frm.kodeord1.select(); frm.kodeord1.focus(); return false;}
  if (frm.kodeord.value != frm.kodeord1.value) {alert(\'Chatten : De 2 kodeord er ikke ens\'); frm.kodeord.select(); frm.kodeord.focus(); return false;}

pw1 = formOpret.kodeord1.value;
pw2 = formOpret.kodeord2.value;

if (pw1 != pw2) {
alert (\"\\nDu skal indtaste det samme password i begge felterne.\")
password1.field.focus();
return false;
}
  else {return true;}
}
//-->
</script>
Avatar billede vicesux Nybegynder
18. maj 2001 - 14:07 #17
Ok nu fungere det.... Bortset fra den ikke opretter brugeren *G*
Avatar billede vicesux Nybegynder
18. maj 2001 - 14:07 #18
Den skal bare lige lave brugeren også så skulle den være der
Avatar billede Slettet bruger
18. maj 2001 - 14:16 #19
Hvilket kald opretter brugeren? $subm?

I så fald smider du bare en <input type=\"hidden\" name=\"subm\" value=\"opret\">
Avatar billede vicesux Nybegynder
18. maj 2001 - 14:17 #20
Aner ikke hvad det kald hedder... Kan du ikke se det somewhere?
Avatar billede Slettet bruger
18. maj 2001 - 14:19 #21
Det ser sådan ud for mig..men er det ikke dig der har lavet det?
Avatar billede vicesux Nybegynder
18. maj 2001 - 14:20 #22
Nej ikke det script her det er en af mine venner der lavede det.. *G*

Hvordan skal hele scriptet så se ud nu?
Avatar billede vicesux Nybegynder
18. maj 2001 - 14:25 #23
Ok nu virker det fandme sq og helvedet!
Avatar billede vicesux Nybegynder
18. maj 2001 - 14:26 #24
Den har dog stadig en error on page ?
Avatar billede Slettet bruger
18. maj 2001 - 14:34 #25
Er der mulighed for at jeg kan se siden? altså på nettet?

Det er svært at finde fejlen når jeg ikke har hele siden.

Evt load siden, vis kilde og sæt det hele ind her. Og skriv også i hvilken linie den der error on page er...
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