Avatar billede stieper Nybegynder
12. oktober 2005 - 11:51 Der er 4 kommentarer og
1 løsning

Udskrive $_POST[username] i en php Function

Hejsa.

Jeg har en funktion som skriver en side i html - men jeg kan ikke finde ud af, hvordan jeg udskriver $_POST[username] midt på siden, for at vise brugerens navn.
For at komme til siden, har brugeren indtastet et navn i en form, hvor hans navn er gemt som name="username".

Er der nogle af jer der kan hjælpe mig med syntax?

Her er funktionen, hvor jeg skal have det med i...


function bygSide($titel, $indhold) {

  /**
  * Pakker indholdet ind i lidt formalia
  */
  return '<html>
            <head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <!-- Vesteuropæisk tegnsæt -->
<title>Webmaleri.dk</title>
<link rel="stylesheet" type="text/css" href="../webmaleri.css"> <!-- overordnet design til webmaleri.dk i css fil -->
</head>
            <body>

              <div id="topbar"><h1>Webmaleri.dk</h1>
  <hr class="toplinje" />
  </div>
    <div id="menu"
    <p>
<a class="mlink" style="display:block;padding:5px;" href="../index.php">Forside</a>
<a class="mlink" style="display:block;padding:5px;" href="upload.php">Upload Malerier</a>
<a class="mlink" style="display:block;padding:5px;" href="side3.htm">Til side 3</a>
<a class="mlink" style="display:block;padding:5px;" href="ny_kategori/index.htm">Til anden kategori</a>
<a class="mlink" style="display:block;padding:5px;" href="http://www.server.dk/fremmed.htm">Til en andens side</a>
<a class="mlink" style="display:block;padding:5px;" href="index.php">Login / Din Konto</a>
<a class="mlink" style="display:block;padding:5px;" href="index.php?logaf=true\">Log ud</a></a>
</p>
    </div>
    <div id="indhold">
    <h2>Velkommen til Webmaleri.dk</h2>
    <br />
    <b>Dit maleri blev korrekt tilføjet til vores galleri.</b>
    <br />
    ' . $indhold . '
    </div>

  <div id="footer">
      <h1>Her er bundlinjen</h1>
  </div>

            </body>
          </html>
        ';
}


Tak for hjælpen ;-)
Avatar billede kimg Nybegynder
12. oktober 2005 - 12:05 #1
Så skulle den være der.

<?PHP
function bygSide($titel, $indhold, $user) {

  /**
  * Pakker indholdet ind i lidt formalia
  */
  return '<html>
            <head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <!-- Vesteuropæisk tegnsæt -->
<title>Webmaleri.dk</title>
<link rel="stylesheet" type="text/css" href="../webmaleri.css"> <!-- overordnet design til webmaleri.dk i css fil -->
</head>
            <body>

              <div id="topbar"><h1>Webmaleri.dk</h1>
  <hr class="toplinje" />
  </div>
    <div id="menu"
    <p>
<a class="mlink" style="display:block;padding:5px;" href="../index.php">Forside</a>
<a class="mlink" style="display:block;padding:5px;" href="upload.php">Upload Malerier</a>
<a class="mlink" style="display:block;padding:5px;" href="side3.htm">Til side 3</a>
<a class="mlink" style="display:block;padding:5px;" href="ny_kategori/index.htm">Til anden kategori</a>
<a class="mlink" style="display:block;padding:5px;" href="http://www.server.dk/fremmed.htm">Til en andens side</a>
<a class="mlink" style="display:block;padding:5px;" href="index.php">Login / Din Konto</a>
<a class="mlink" style="display:block;padding:5px;" href="index.php?logaf=true\">Log ud</a></a>
</p>
    </div>
    <div id="indhold">
    <h2>Velkommen til Webmaleri.dk</h2>
    <br />
    <b>Hej ' . $user . '<br><br>Dit maleri blev korrekt tilføjet til vores galleri.</b>
   
    <br />
    ' . $indhold . '
    </div>

  <div id="footer">
      <h1>Her er bundlinjen</h1>
  </div>

            </body>
          </html>
        ';
}

Kim
Avatar billede stieper Nybegynder
12. oktober 2005 - 12:09 #2
Ok, så lang så godt - men den henter ingen variabel fra $user..
Skal der ikke i stedet for $user stå $_POST[username] ??
Avatar billede stieper Nybegynder
12. oktober 2005 - 12:19 #3
Jeg poster lige hele koden, hvis det er til at overskue... $_POST[userid] bliver taget med fra min html form, for at skrive brugerens id i min database sammen med de filer han uploader. Brugerens id er inden da hentet fra en session via include_once i toppen af min html form.

her er hele koden fra min upload_souce.php:


<?php
/**
* Simpelt script der tager imod et filupload og lister
* filer i upload-biblioteket.
*
* Scriptet er et eksempel til en artikel paa WebCafe.dk:
*
*    http://www.webcafe.dk/artikler/php/upload/
*/


/**
* Hvor skal filerne uploades til?
* Husk, at webserveren skal kunne skrive til dette bibliotek
*/
$konfiguration["upload_bibliotek"] = "./upload";

/* Hvor mange kilobytes maa filerne fylde per styk? */
$konfiguration["max_stoerrelse"] = "30";


/**
* Checker PHP-version
*/
list($major, $minor, $rev) = explode(".", phpversion());
if($major < 4) {
  die("Jeg kan kun arbejde med PHP 4.0.0 eller derover");
}


/**
* Udligner forskellene mellem 4.1.x og 4.0.x
* Bemaerk, at disse ikke er "superglobals"
*/
if($minor < 1) {
  $_FILES = $HTTP_POST_FILES;
  $_POST = $HTTP_POST_VARS;
  $_SERVER = $HTTP_SERVER_VARS;
}


if($_FILES["upfil"]["size"] > 0) {

  /**
  * Hvis der er en fil, saa uploader vi den.
  *
  * Foerst slaar vi lige fast, hvor filen skal flyttes fra og til.
  */

  $fra = $_FILES["upfil"]["tmp_name"];
  $til = $konfiguration["upload_bibliotek"] . "/" . $_FILES["upfil"]["name"];

  /**
  *  Checker lige om filen er for stor til at vi vil acceptere den.
  *  Vi bruger ceil() i stedet for round(), saa vi ikke faar den skoere
  *  situation, at fejlmeldingen siger, at filen er for stor, men angiver
  *  samme stoerrelse for filen og den oevre graense.
  */
  $fil_stoerrelse = filesize($fra)/1024;
  if($fil_stoerrelse > $konfiguration["max_stoerrelse"]) {
      die("Desv&aelig;rre - filen er for stor. Vi accepterer kun " .
          $konfiguration["max_stoerrelse"] . "kb, og din fil fylder " .
          ceil($fil_stoerrelse) . "kb");
  }
 
    if (!file_exists($til))
    {
        if (move_uploaded_file($_FILES['userfile']['tmp_name'], $til))
        {
            break;
        }
        else
        {
           
        }
    }
    else
        {
            echo ('<html>
                        <head>
                        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <!-- Vesteuropæisk tegnsæt -->
                        <title>Webmaleri.dk</title>
                        <link rel="stylesheet" type="text/css" href="../webmaleri.css"> <!-- overordnet design til webmaleri.dk i css fil -->
                        </head>
                        <body>

                        <div id="topbar"><h1>Webmaleri.dk</h1>
                        <hr class="toplinje" />
                        </div>
                        <div id="menu"
                        <p>
                        <a class="mlink" style="display:block;padding:5px;" href="index.php">Gå til Forsiden</a>
                        <a class="mlink" style="display:block;padding:5px;" href="upload.php">Forsøg igen...</a>

                        </p>
                        </div>
                        <div id="indhold">
                        <h2>Velkommen til Webmaleri.dk</h2>
                        <br />
            <br />
            <b>Der findes desværre allerede en fil med samme navn - Vær venlig at give filen et andet navn.</b>
            <br />
            <br />
            <br />
                        <b>Klik <a href="upload.php">her</a> for at forsøge igen</b>
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        </div>

                        <div id="footer">
                        <h1>Her er bundlinjen</h1>
                        </div>

                        </body>
                        </html>
                        ');
                        exit;
        }


   
   
   
    if(function_exists("move_uploaded_file")) {
    move_uploaded_file($fra, $til);
  } //else {
    //copy($fra, $til);
  //}
    if (function_exists("move_uploaded_file")) {
  $server = "xxxxxxx";
  $bruger = "xxxxx";
  $kodeord = "xxxxxx";
  $database = "xxxxx";
    $conn = mysql_connect("$server", "$bruger", "$kodeord");
    mysql_select_db("$database");
  //Så går vi igang med mysql
  $storrelse = $_FILES["upfil"]["size"];
  $type = $_POST["billedtype"];
  $userid = $_POST["brugerid"];
  $beskrivelse = $_POST["descr"];
  $navn = $_FILES["upfil"]["name"];
  $tabel = "filer";
  $sti = $konfiguration["upload_bibliotek"];
  $dimension = $_POST["dimension"];
  $filtype = $_FILES["upfil"]["type"];
    $insertSQL = "insert into $tabel (bill_sti, descr, name, dimension, type, filetype, size, userid)
              values ('$sti', '$beskrivelse', '$navn', '$dimension', '$type', '$filtype', '$storrelse', '$userid')";
  mysql_query($insertSQL) or die (mysql_error());

  mysql_close();

  }
  header("Location: " . $_SERVER["PHP_SELF"]);
  exit;

} else {

  /**
  * Intet tegn paa upload, saa vi viser bare listen over filer
  * og HTML-formularen til nye uploads.
  */
  $indhold = listFiler($konfiguration["upload_bibliotek"]);
  $indhold .= bygFormular($_SERVER["PHP_SELF"]);
  $output = bygSide("Webmaleri.dk", $indhold);

}


/**
* Skriver ud til browseren
*/
echo $output;
exit;




/**************************************************\
**              Hjaelpefunktioner              **
\**************************************************/

function bygSide($titel, $indhold, $user) {


  /**
  * Pakker indholdet ind i lidt formalia
  */
  return '<html>
            <head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <!-- Vesteuropæisk tegnsæt -->
<title>Webmaleri.dk</title>
<link rel="stylesheet" type="text/css" href="../webmaleri.css"> <!-- overordnet design til webmaleri.dk i css fil -->
</head>
            <body>

              <div id="topbar"><h1>Webmaleri.dk</h1>
  <hr class="toplinje" />
  </div>
    <div id="menu"
    <p>
<a class="mlink" style="display:block;padding:5px;" href="../index.php">Forside</a>
<a class="mlink" style="display:block;padding:5px;" href="upload.php">Upload Malerier</a>
<a class="mlink" style="display:block;padding:5px;" href="side3.htm">Til side 3</a>
<a class="mlink" style="display:block;padding:5px;" href="ny_kategori/index.htm">Til anden kategori</a>
<a class="mlink" style="display:block;padding:5px;" href="http://www.server.dk/fremmed.htm">Til en andens side</a>
<a class="mlink" style="display:block;padding:5px;" href="index.php">Login / Din Konto</a>
<a class="mlink" style="display:block;padding:5px;" href="index.php?logaf=true\">Log ud</a></a>
</p>
    </div>
    <div id="indhold">
    <h2>Velkommen til Webmaleri.dk</h2>
    <br />
    <b>Hej ' . $user . '<br><br>Dit maleri blev korrekt tilføjet til vores galleri.</b>
   
    <br />
    ' . $indhold . '
    </div>

  <div id="footer">
      <h1>Her er bundlinjen</h1>
  </div>

            </body>
          </html>
        ';
}


function bygFormular($action) {

  $formular = '<form action="upload_source.php" method="post" enctype="multipart/form-data">
  <b>Maleri til upload:</b>
  <input type="file" name="upfil" size="50" />
  <br />
  <br />
  <b>Beskrivelse:</b>
  <br />
  <TEXTAREA NAME="descr" COLS=75 ROWS=20></TEXTAREA>
  <br />
  <br />
  <b>Maleri Type:</b><br />
    Acryl<input type="radio" name="billedtype" value="Acryl" checked>
    Olie<input type="radio" name="billedtype" value="Olie">
    Pastel<input type="radio" name="billedtype" value="Pastel">
    Blyant<input type="radio" name="billedtype" value="Blyant">
  <br />
  <b>Maleriets ydre mål i cm.</b><input type="text" name="dimension" value="100x200">
  &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="Gem Maleri..." />
' .print $_POST["brugerid"] . '</form>';



  return $formular;

}

function listFiler($bibliotek) {

  if($bib = @opendir($bibliotek)) {
    /**
    * Denne syntaks er forklaret i PHP-manualen:
    * http://www.php.net/manual/en/function.readdir.php
    */
    while (false !== ($fil = readdir($bib))) {
      if($fil != "." && $fil != ".." && !ereg("^\..+", $fil)) {
          $fil_liste[] = "<a href=\"$bibliotek/$fil\">$fil</a>";
      }
    }
    closedir($bib);

    if(is_array($fil_liste)) {
      $liste = "<li>" . join("</li><li>", $fil_liste) . "</li>";
    } else {
      $liste = "<li>Ingen filer p&aring; lager</li>";
    }
    return "<h3>Dine malerier p&aring; Webmaleri.dk:</h3><ul>" . $liste . "</ul>";
  } else {
    die("Kunne ikke &aring;bne biblioteket: " . $bibliotek);
  }

}




?>
Avatar billede kimg Nybegynder
12. oktober 2005 - 12:42 #4
kræver så at du har et felt i din form der hedder username

<?php
/**
* Simpelt script der tager imod et filupload og lister
* filer i upload-biblioteket.
*
* Scriptet er et eksempel til en artikel paa WebCafe.dk:
*
*    http://www.webcafe.dk/artikler/php/upload/
*/


/**
* Hvor skal filerne uploades til?
* Husk, at webserveren skal kunne skrive til dette bibliotek
*/
$konfiguration["upload_bibliotek"] = "./upload";

/* Hvor mange kilobytes maa filerne fylde per styk? */
$konfiguration["max_stoerrelse"] = "30";


/**
* Checker PHP-version
*/
list($major, $minor, $rev) = explode(".", phpversion());
if($major < 4) {
  die("Jeg kan kun arbejde med PHP 4.0.0 eller derover");
}


/**
* Udligner forskellene mellem 4.1.x og 4.0.x
* Bemaerk, at disse ikke er "superglobals"
*/
if($minor < 1) {
  $_FILES = $HTTP_POST_FILES;
  $_POST = $HTTP_POST_VARS;
  $_SERVER = $HTTP_SERVER_VARS;
}


if($_FILES["upfil"]["size"] > 0) {

  /**
  * Hvis der er en fil, saa uploader vi den.
  *
  * Foerst slaar vi lige fast, hvor filen skal flyttes fra og til.
  */

  $fra = $_FILES["upfil"]["tmp_name"];
  $til = $konfiguration["upload_bibliotek"] . "/" . $_FILES["upfil"]["name"];

  /**
  *  Checker lige om filen er for stor til at vi vil acceptere den.
  *  Vi bruger ceil() i stedet for round(), saa vi ikke faar den skoere
  *  situation, at fejlmeldingen siger, at filen er for stor, men angiver
  *  samme stoerrelse for filen og den oevre graense.
  */
  $fil_stoerrelse = filesize($fra)/1024;
  if($fil_stoerrelse > $konfiguration["max_stoerrelse"]) {
      die("Desv&aelig;rre - filen er for stor. Vi accepterer kun " .
          $konfiguration["max_stoerrelse"] . "kb, og din fil fylder " .
          ceil($fil_stoerrelse) . "kb");
  }
 
    if (!file_exists($til))
    {
        if (move_uploaded_file($_FILES['userfile']['tmp_name'], $til))
        {
            break;
        }
        else
        {
           
        }
    }
    else
        {
            echo ('<html>
                        <head>
                        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <!-- Vesteuropæisk tegnsæt -->
                        <title>Webmaleri.dk</title>
                        <link rel="stylesheet" type="text/css" href="../webmaleri.css"> <!-- overordnet design til webmaleri.dk i css fil -->
                        </head>
                        <body>

                        <div id="topbar"><h1>Webmaleri.dk</h1>
                        <hr class="toplinje" />
                        </div>
                        <div id="menu"
                        <p>
                        <a class="mlink" style="display:block;padding:5px;" href="index.php">Gå til Forsiden</a>
                        <a class="mlink" style="display:block;padding:5px;" href="upload.php">Forsøg igen...</a>

                        </p>
                        </div>
                        <div id="indhold">
                        <h2>Velkommen til Webmaleri.dk</h2>
                        <br />
            <br />
            <b>Der findes desværre allerede en fil med samme navn - Vær venlig at give filen et andet navn.</b>
            <br />
            <br />
            <br />
                        <b>Klik <a href="upload.php">her</a> for at forsøge igen</b>
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        <br />
                        </div>

                        <div id="footer">
                        <h1>Her er bundlinjen</h1>
                        </div>

                        </body>
                        </html>
                        ');
                        exit;
        }


   
   
   
    if(function_exists("move_uploaded_file")) {
    move_uploaded_file($fra, $til);
  } //else {
    //copy($fra, $til);
  //}
    if (function_exists("move_uploaded_file")) {
  $server = "xxxxxxx";
  $bruger = "xxxxx";
  $kodeord = "xxxxxx";
  $database = "xxxxx";
    $conn = mysql_connect("$server", "$bruger", "$kodeord");
    mysql_select_db("$database");
  //Så går vi igang med mysql
  $storrelse = $_FILES["upfil"]["size"];
  $type = $_POST["billedtype"];
  $userid = $_POST["brugerid"];
  $beskrivelse = $_POST["descr"];
  $navn = $_FILES["upfil"]["name"];
  $tabel = "filer";
  $sti = $konfiguration["upload_bibliotek"];
  $dimension = $_POST["dimension"];
  $navn = $_POST["username"];
  $filtype = $_FILES["upfil"]["type"];
    $insertSQL = "insert into $tabel (bill_sti, descr, name, dimension, type, filetype, size, userid)
              values ('$sti', '$beskrivelse', '$navn', '$dimension', '$type', '$filtype', '$storrelse', '$userid')";
  mysql_query($insertSQL) or die (mysql_error());

  mysql_close();

  }
  header("Location: " . $_SERVER["PHP_SELF"]);
  exit;

} else {

  /**
  * Intet tegn paa upload, saa vi viser bare listen over filer
  * og HTML-formularen til nye uploads.
  */
  $indhold = listFiler($konfiguration["upload_bibliotek"]);
  $indhold .= bygFormular($_SERVER["PHP_SELF"]);
  $output = bygSide("Webmaleri.dk", $indhold, $navn);

}


/**
* Skriver ud til browseren
*/
echo $output;
exit;




/**************************************************\
**              Hjaelpefunktioner              **
\**************************************************/

function bygSide($titel, $indhold, $navn) {


  /**
  * Pakker indholdet ind i lidt formalia
  */
  return '<html>
            <head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <!-- Vesteuropæisk tegnsæt -->
<title>Webmaleri.dk</title>
<link rel="stylesheet" type="text/css" href="../webmaleri.css"> <!-- overordnet design til webmaleri.dk i css fil -->
</head>
            <body>

              <div id="topbar"><h1>Webmaleri.dk</h1>
  <hr class="toplinje" />
  </div>
    <div id="menu"
    <p>
<a class="mlink" style="display:block;padding:5px;" href="../index.php">Forside</a>
<a class="mlink" style="display:block;padding:5px;" href="upload.php">Upload Malerier</a>
<a class="mlink" style="display:block;padding:5px;" href="side3.htm">Til side 3</a>
<a class="mlink" style="display:block;padding:5px;" href="ny_kategori/index.htm">Til anden kategori</a>
<a class="mlink" style="display:block;padding:5px;" href="http://www.server.dk/fremmed.htm">Til en andens side</a>
<a class="mlink" style="display:block;padding:5px;" href="index.php">Login / Din Konto</a>
<a class="mlink" style="display:block;padding:5px;" href="index.php?logaf=true\">Log ud</a></a>
</p>
    </div>
    <div id="indhold">
    <h2>Velkommen til Webmaleri.dk</h2>
    <br />
    <b>Hej ' . $user . '<br><br>Dit maleri blev korrekt tilføjet til vores galleri.</b>
   
    <br />
    ' . $indhold . '
    </div>

  <div id="footer">
      <h1>Her er bundlinjen</h1>
  </div>

            </body>
          </html>
        ';
}


function bygFormular($action) {

  $formular = '<form action="upload_source.php" method="post" enctype="multipart/form-data">
  <b>Maleri til upload:</b>
  <input type="file" name="upfil" size="50" />
  <br />
  <br />
  <b>Beskrivelse:</b>
  <br />
  <TEXTAREA NAME="descr" COLS=75 ROWS=20></TEXTAREA>
  <br />
  <br />
  <b>Maleri Type:</b><br />
    Acryl<input type="radio" name="billedtype" value="Acryl" checked>
    Olie<input type="radio" name="billedtype" value="Olie">
    Pastel<input type="radio" name="billedtype" value="Pastel">
    Blyant<input type="radio" name="billedtype" value="Blyant">
  <br />
  <b>Maleriets ydre mål i cm.</b><input type="text" name="dimension" value="100x200">
  &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="Gem Maleri..." />
' .print $_POST["brugerid"] . '</form>';



  return $formular;

}

function listFiler($bibliotek) {

  if($bib = @opendir($bibliotek)) {
    /**
    * Denne syntaks er forklaret i PHP-manualen:
    * http://www.php.net/manual/en/function.readdir.php
    */
    while (false !== ($fil = readdir($bib))) {
      if($fil != "." && $fil != ".." && !ereg("^\..+", $fil)) {
          $fil_liste[] = "<a href=\"$bibliotek/$fil\">$fil</a>";
      }
    }
    closedir($bib);

    if(is_array($fil_liste)) {
      $liste = "<li>" . join("</li><li>", $fil_liste) . "</li>";
    } else {
      $liste = "<li>Ingen filer p&aring; lager</li>";
    }
    return "<h3>Dine malerier p&aring; Webmaleri.dk:</h3><ul>" . $liste . "</ul>";
  } else {
    die("Kunne ikke &aring;bne biblioteket: " . $bibliotek);
  }

}




?>
Avatar billede stieper Nybegynder
13. oktober 2005 - 16:15 #5
Fandt selv ud af det - det forslag kimg lavede, var til at skrive username i databasen, men d var ik d jeg skulle bruge.
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