Avatar billede janorakel Nybegynder
24. maj 2007 - 16:39 Der er 7 kommentarer og
1 løsning

PHP script der driller

Tja, det er meningen dette script skal tilføje en post - men det gør det ikke. Måske er det en tastefejl.

Her er det:

<?php require_once('./Connections/local2.php'); ?>
<?php
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
  $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;   
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}

$editFormAction = $HTTP_SERVER_VARS['PHP_SELF'];
if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
  $editFormAction .= "?" . $HTTP_SERVER_VARS['QUERY_STRING'];
}

if ((isset($HTTP_POST_VARS["MM_insert"])) && ($HTTP_POST_VARS["MM_insert"] == "form1")) {
  $insertSQL = sprintf("INSERT INTO custumer (user, password, custumer, name, street, postnumber, city, telephone, email, firm_location) VALUES (%s, md5(%s), %s, %s, %s, %s, %s, %s, %s, %s)",
                GetSQLValueString($HTTP_POST_VARS['user'], "text"),
                GetSQLValueString($HTTP_POST_VARS['password'], "text"),
                GetSQLValueString($HTTP_POST_VARS['custumer'], "text"),
                GetSQLValueString($HTTP_POST_VARS['name'], "text"),
                GetSQLValueString($HTTP_POST_VARS['street'], "text"),
                GetSQLValueString($HTTP_POST_VARS['postnumber'], "text"),
                GetSQLValueString($HTTP_POST_VARS['city'], "text"),
                GetSQLValueString($HTTP_POST_VARS['telephone'], "text"),
                GetSQLValueString($HTTP_POST_VARS['email'], "text"),
                GetSQLValueString($HTTP_POST_VARS['firm_location'], "text"));

  mysql_select_db($database_local2, $local2);
  $Result1 = mysql_query($insertSQL, $local2) or die(mysql_error());

  $insertGoTo = "../kundevalg.php";
  if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
    $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
    $insertGoTo .= $HTTP_SERVER_VARS['QUERY_STRING'];
  }
  header(sprintf("Location: %s", $insertGoTo));
}
?>
<html>
<head>
<title>indtast post</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="../css/greenstyle2.css" type="text/css">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
</head>

<body>
<div id="Layer1" style="Z-INDEX: 1; LEFT: 149px; WIDTH: 273px; POSITION: absolute; TOP: 4px; HEIGHT: 23px"><em><strong><font size="2">Opret
  ny kunde </font></strong></em></div>
<div align="left"><em><strong><font size="2"> </font></strong></em></div>
<p align="center">&nbsp;</p>
<form method="post" name="form1" action="<?php echo $editFormAction; ?>">
  <div align="center">
    <table width="720" align="left">
      <tr valign="baseline">
        <td height="31" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left"><strong><em>Brugeroplysninger:</em></strong></div></td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
      <tr valign="baseline">
        <td width="60" height="21" align="right" nowrap>&nbsp;</td>
        <td width="206" align="right" nowrap><div align="left">Bruger(brugernavn til login):</div></td>
        <td width="419"><input name="user" size="50" maxlength="100" ></td>
        <td width="15">&nbsp;</td>
      </tr>
      <tr valign="baseline">
        <td align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Password:</div></td>
        <td><input name="password" size="30" maxlength="100" ></td>
        <td>&nbsp;</td>
      </tr>
      <tr valign="baseline">
        <td align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Virksomhed:</div></td>
        <td colspan="2"><input name="custumer" size="50" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Navn:</div></td>
        <td colspan="2"><input name="name" size="50" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Vej:</div></td>
        <td colspan="2"><input name="street" size="60" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Postnr:</div></td>
        <td colspan="2"><input name="postnumber" size="10" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">By:</div></td>
        <td colspan="2"><input name="city" size="60" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Telefon:</div></td>
        <td colspan="2"><input name="telephone" size="10" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">E-mail</div></td>
        <td colspan="2"><input name="email" size="50" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Firmalokation:</div></td>
        <td colspan="2"><input name="firm_location" size="50" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td align="right" nowrap><div align="left"></div></td>
        <td align="right" nowrap>&nbsp;</td>
        <td colspan="2"><input type="submit" value="Tilf&oslash;j den nye bruger"></td>
      </tr>
    </table>
    <input type="hidden" name="MM_insert" value="form1">
  </div>
</form>
<p align="center">&nbsp;</p>
 

</body>
</html>
Avatar billede jakobdo Ekspert
24. maj 2007 - 18:32 #1
Prøv at lav noget debug gennem kode:

echo "DEBUG : TheType = $thetype<br />";
osv...

Så kan du se hvor langt dit script kommer og om variabler indeholder det du forventer.
Avatar billede janorakel Nybegynder
24. maj 2007 - 20:54 #2
Den melder stadig ingen fejl. Skal jeg indsætte debuggen et specielt sted?
Avatar billede jakobdo Ekspert
24. maj 2007 - 21:10 #3
Det skal du gøre fra top til bund f.eks. !
Så kan du f.eks. skrive:

echo 'Jeg er her';

længere nede i koden:
echo 'og nu her...';

Debug er bare en metode at gennemgå ens egen kode.
Avatar billede janorakel Nybegynder
25. maj 2007 - 11:30 #4
Tja, jeg har prøvet diverse debug-sætninger, men det ser ikke ud som jeg har nogen fejl i scriptet.
Det kan være at det er forbindelsen til databasen eller at tabellen ikke rigtig passer til.
Smider den lige:

CREATE TABLE `custumer` (
  `id` int(10) NOT NULL auto_increment,
  `user` text,
  `custumer` text,
  `name` text,
  `street` text,
  `postnumber` text,
  `city` text,
  `telephone` text,
  `email` text,
  `firm_location` text,
  `password` text,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

#
# Data dump for tabellen `custumer`
#
Avatar billede janorakel Nybegynder
25. maj 2007 - 16:51 #5
Ok, det virker nu!

HTTP_POST_VARS blev ændret til _POST

Så kom scriptet til at se sådan ud:

<?php require_once('./Connections/local2.php'); ?>
<?php
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
  $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;   
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}

$editFormAction = $HTTP_SERVER_VARS['PHP_SELF'];
if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
  $editFormAction .= "?" . $HTTP_SERVER_VARS['QUERY_STRING'];
}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  $insertSQL = sprintf("INSERT INTO custumer (id, user, password, custumer, name, street, postnumber, city, telephone, email, firm_location) VALUES (%s, %s, md5(%s), %s, %s, %s, %s, %s, %s, %s, %s)",
                GetSQLValueString($_POST['id'], "int"),
                GetSQLValueString($_POST['user'], "text"),
                GetSQLValueString($_POST['password'], "text"),
                GetSQLValueString($_POST['custumer'], "text"),
                GetSQLValueString($_POST['name'], "text"),
                GetSQLValueString($_POST['street'], "text"),
                GetSQLValueString($_POST['postnumber'], "text"),
                GetSQLValueString($_POST['city'], "text"),
                GetSQLValueString($_POST['telephone'], "text"),
                GetSQLValueString($_POST['email'], "text"),
                GetSQLValueString($_POST['firm_location'], "text"));

  mysql_select_db($database_local2, $local2);
  $Result1 = mysql_query($insertSQL, $local2) or die(mysql_error());

  $insertGoTo = "/kundevalg.php";
  if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
    $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
    $insertGoTo .= $HTTP_SERVER_VARS['QUERY_STRING'];
  }
  header(sprintf("Location: %s", $insertGoTo));
}

?>
<html>
<head>
<title>indtast post</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="../css/greenstyle2.css" type="text/css">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
</head>

<body>
<div id="Layer1" style="Z-INDEX: 1; LEFT: 149px; WIDTH: 273px; POSITION: absolute; TOP: 4px; HEIGHT: 23px"><em><strong><font size="2">Opret
  ny kunde </font></strong></em></div>
<div align="left"><em><strong><font size="2"> </font></strong></em></div>
<p align="center">&nbsp;</p>
<form method="post" name="form1" action="<?php echo $editFormAction; ?>">
  <div align="center">
    <table width="720" align="left">
      <tr valign="baseline">
        <td height="31" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left"><strong><em>Brugeroplysninger:</em></strong></div></td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
      <tr valign="baseline">
        <td width="60" height="21" align="right" nowrap>&nbsp;</td>
        <td width="206" align="right" nowrap><div align="left">Bruger(brugernavn til login):</div></td>
        <td width="419"><input name="user" size="50" maxlength="100" ></td>
        <td width="15">&nbsp;</td>
      </tr>
      <tr valign="baseline">
        <td align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Password:</div></td>
        <td><input name="password" size="30" maxlength="100" ></td>
        <td>&nbsp;</td>
      </tr>
      <tr valign="baseline">
        <td align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Virksomhed:</div></td>
        <td colspan="2"><input name="custumer" size="50" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Navn:</div></td>
        <td colspan="2"><input name="name" size="50" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Vej:</div></td>
        <td colspan="2"><input name="street" size="60" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Postnr:</div></td>
        <td colspan="2"><input name="postnumber" size="10" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">By:</div></td>
        <td colspan="2"><input name="city" size="60" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Telefon:</div></td>
        <td colspan="2"><input name="telephone" size="10" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">E-mail</div></td>
        <td colspan="2"><input name="email" size="50" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td height="21" align="right" nowrap>&nbsp;</td>
        <td align="right" nowrap><div align="left">Firmalokation:</div></td>
        <td colspan="2"><input name="firm_location" size="50" maxlength="100" ></td>
      </tr>
      <tr valign="baseline">
        <td align="right" nowrap><div align="left"></div></td>
        <td align="right" nowrap>&nbsp;</td>
        <td colspan="2"><input type="submit" value="Tilf&oslash;j den nye bruger"></td>
      </tr>
    </table>
    <input type="hidden" name="MM_insert" value="form1">
  </div>
</form>
<p align="center">&nbsp;</p>

</body>
</html>

Tak for hjælpen! Smider du et svar?
Avatar billede jakobdo Ekspert
25. maj 2007 - 17:10 #6
Hvis du synes jeg er hjulpet, så får du et svar her.
Avatar billede janorakel Nybegynder
25. maj 2007 - 17:16 #7
Det har du!
Avatar billede jakobdo Ekspert
25. maj 2007 - 17:42 #8
Jeg siger mange tak for point så!
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