Avatar billede big_ossi Nybegynder
02. oktober 2003 - 00:46 Der er 25 kommentarer og
1 løsning

200 for at rette denne kode så den virker

hey.
Jeg har mit bøvl med denne kode.
Den laver en counter fejl nu og den kan ses hvis man trykker filføj på siden ligger online på http://dff.ossipoff.net/tilfoj/admin.php

der udover er jeg usikker på om den uploader billederne rigtig og gemmer fil stien rigtig.

koden :

<?php {
    include("config.php");
    if($_POST['upload']){
        if ($_POST['pic1'] == 1) {
            $files = $_FILES['upfil1']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil1']['tmp_name'], $dist . $files);
        }
        if ($_POST['pic2'] == 1) {
            $files = $_FILES['upfil2']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil2']['tmp_name'], $dist . $files);
        }
        if ($_POST['pic3'] == 1) {
            $files = $_FILES['upfil3']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil3']['tmp_name'], $dist . $files);
        }
        if ($_POST['pic4'] == 1) {
            $files = $_FILES['upfil4']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil4']['tmp_name'], $dist . $files);
        }
        if ($_POST['pic5'] == 1) {
            $files = $_FILES['upfil5']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil5']['tmp_name'], $dist . $files);
        }
        if ($_POST['pic6'] == 1) {
            $files = $_FILES['upfil6']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil6']['tmp_name'], $dist . $files);
        }
        if ($_POST['pic7'] == 1) {
            $files = $_FILES['upfil7']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil7']['tmp_name'], $dist . $files);
        }
        if ($_POST['pic8'] == 1) {
            $files = $_FILES['upfil8']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil8']['tmp_name'], $dist . $files);
        }
        if ($_POST['pic9'] == 1) {
            $files = $_FILES['upfil9']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil9']['tmp_name'], $dist . $files);
        }
        if ($_POST['pic10'] == 1) {
            $files = $_FILES['upfil10']['name'];
            $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
            move_uploaded_file($_FILES['upfil10']['tmp_name'], $dist . $files);
        }
        elseif ($_POST['pic'] == 2) {
            $files = "opdatering.gif";
        } else {
            $files = "nopic.gif";
        }
        mysql_query("INSERT INTO festene (navn, dato, af, email, beskriv, link) values ('$_POST[navn]','$_POST[dato]','$_POST[af]', '$_POST[email]', '$_POST[beskriv]', '$_POST[link]', '$files')") or die (mysql_error ());
        header("Location: indexx.php");
    }
?>

<html>
<head>
<title>Admin system</title>
</head>
<body bgcolor="#3b3b3b" text="#ffffff" link="#ffffff" vlink="#ffffff" alink="#ffffff">
<p align="center"><font size="2" face="Arial, Helvetica, sans-serif"><img src="../gfx/banner_dinfest.jpg" width="300" height="53"></font></p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
  <table width="100%" border="0">
    <tr>
      <td width="22%"><font size="1" face="Arial, Helvetica, sans-serif">Festen
        Navn:</font></td>
      <td width="76%" colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="navn" type="text" value="F.eks HH Fest Hobro">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">Afholdt den:</font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="dato" type="text" value="&aring;&aring;&aring;&aring;-mm-dd">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">Tilf&oslash;jet af:
        </font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="af" type="text" value="Dit navn">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">Email : </font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="email" type="text" value="Din email">
        Bruges hvis jeres fest bliver Den Fedeste Fest</font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">Beskrivelse af festen
        </font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <textarea name="beskriv" cols="60" rows="10">Jo flere detaljer jo bedre
Så har læserne bedre mulighed for at
bedømme festen og give points der efter.</textarea>
        </font></td>
    </tr>
    <tr>
      <td rowspan="5" align="left" valign="top"><font size="1" face="Arial, Helvetica, sans-serif">Upload
        op til 10 pics</font></td>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic1">
        <input type="file" name="upfil1" size="20">
        </font></td>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic2">
        <input type="file" name="upfil2" size="20">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic3">
        <input type="file" name="upfil3" size="20">
        </font></td>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic4">
        <input type="file" name="upfil4" size="20">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic5">
        <input type="file" name="upfil5" size="20">
        </font></td>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic6">
        <input type="file" name="upfil6" size="20">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic7">
        <input type="file" name="upfil7" size="20">
        </font></td>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic8">
        <input type="file" name="upfil8" size="20">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic9">
        <input type="file" name="upfil9" size="20">
        </font></td>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="checkbox" value="1" name="pic10">
        <input type="file" name="upfil10" size="20">
        </font></td>
    </tr>
    <tr>
      <td align="left" valign="top"><font size="1" face="Arial, Helvetica, sans-serif">Evt.
        link til flere billeder: </font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="link" type="text" value="Http://">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">&nbsp;</font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="submit" value="Tilf&oslash;j Festen" name="upload">
        </font></td>
    </tr>
  </table>
</form>
</body>
</html>
<?
}
?>
Avatar billede big_ossi Nybegynder
02. oktober 2003 - 00:49 #1
id, navn, dato, af, email, beskriv, link, files  er de felter jeg har i mysql databasen "festene"
Avatar billede detox Nybegynder
02. oktober 2003 - 00:51 #2
Så mangler du et felt her. Prøv med:

mysql_query("INSERT INTO festene (navn, dato, af, email, beskriv, link, files) values ('$_POST[navn]','$_POST[dato]','$_POST[af]', '$_POST[email]', '$_POST[beskriv]', '$_POST[link]', '$files')") or die (mysql_error ());
Avatar billede detox Nybegynder
02. oktober 2003 - 00:58 #3
$files indeholder så selve navnet på den uploadede fil og det er osse fint nok, hvis du beholder den samme sti fremover. Ellers kunne du vælge at gemme hele stien.
Avatar billede big_ossi Nybegynder
02. oktober 2003 - 01:11 #4
Detox

Den laver ikke nogle synlige fejl. Men den gemmer ikke stien til billederne i mysql databasen. den laver kun stien festpic/nopic.gif
men uploader billederne til festpic mappen
Avatar billede big_ossi Nybegynder
02. oktober 2003 - 01:16 #5
har lavet en screen shot af databasen så kan du se den www.ossipoff.net/mysql_input.jpg
Avatar billede detox Nybegynder
02. oktober 2003 - 01:37 #6
Jeg vil faktisk foreslå dig at ændre dit databasedessign, så du gemmer alle detaljer om festene i en tabel og så ligger stierne til dine billeder i en anden, sammen med et id fra fest-tabellen.
Avatar billede big_ossi Nybegynder
02. oktober 2003 - 01:47 #7
kan du lave den kode.. eller et eks. jeg han arbejde med
for det er et af mine første koder det her og er ikke helt inde i det mysql og php sammenfletning

men så kunne man beholde databasen "festene" detaljer og "festbilleder" til billedeinfo
Avatar billede detox Nybegynder
02. oktober 2003 - 01:50 #8
Jeg kan godt lige prøve at se på det.
Avatar billede detox Nybegynder
02. oktober 2003 - 02:31 #9
Ok, her er et udkast. Det kræver den tabel ('festene') du har i forvejen, samt en tabel med to rækker jeg har kaldt: 'fest_pics'. Den ser sådan ud:

CREATE TABLE `fest_pics` (
  `fest_id` smallint(5) unsigned NOT NULL default '0',
  `sti` varchar(64) NOT NULL default ''
) TYPE=MyISAM

Og her er så php delen:

<?php
include("config.php");

if(isset($_POST['upload'])) {
    $dist = $_SERVER["DOCUMENT_ROOT"] . "/festpic/";
    foreach ($_POST as $key => $val) {
        $$key = $val;
    }
    mysql_query("INSERT INTO festene (navn, dato, af, email, beskriv, link)
    VALUES ('$navn', '$dato', '$af', '$email', '$beskriv', '$link')") or die(mysql_error());
    $fest_id = mysql_insert_id();

    for ($i=0;$i<10;$i++) {
        if (isset($_FILES['upfil']['name'][$i]) && $_FILES['upfil']['name'][$i] != "") {
            $filnavn = $_FILES['upfil']['name'][$i];
            $tempnavn = $_FILES['upfil']['tmp_name'][$i];
            $sti = $dist . $filnavn;
            move_uploaded_file($tempnavn, $sti);
            mysql_query("INSERT INTO fest_pics VALUES ($fest_id, '$sti')") or die(mysql_error());
        }
    }

}else{
?>

<html>
<head>
<title>Admin system</title>
</head>
<body bgcolor="#3b3b3b" text="#ffffff" link="#ffffff" vlink="#ffffff" alink="#ffffff">
<p align="center"><font size="2" face="Arial, Helvetica, sans-serif"><img src="../gfx/banner_dinfest.jpg" width="300" height="53"></font></p>
<form action="" method="post" enctype="multipart/form-data">
  <table width="100%" border="0">
    <tr>
      <td width="22%"><font size="1" face="Arial, Helvetica, sans-serif">Festen
        Navn:</font></td>
      <td width="76%" colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="navn" type="text" value="F.eks HH Fest Hobro">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">Afholdt den:</font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="dato" type="text" value="&aring;&aring;&aring;&aring;-mm-dd">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">Tilf&oslash;jet af:
        </font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="af" type="text" value="Dit navn">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">Email : </font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="email" type="text" value="Din email">
        Bruges hvis jeres fest bliver Den Fedeste Fest</font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">Beskrivelse af festen
        </font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <textarea name="beskriv" cols="60" rows="10">Jo flere detaljer jo bedre
Så har læserne bedre mulighed for at
bedømme festen og give points der efter.</textarea>
        </font></td>
    </tr>
    <tr>
      <td rowspan="5" align="left" valign="top"><font size="1" face="Arial, Helvetica, sans-serif">Upload
        op til 10 pics</font></td>
<?
for ($i=1;$i<11;$i++) {
?>
      <td><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="file" name="upfil[]" size="20">
        </font></td>
<?
    if ($i%2 == 0) echo "</tr><tr>";
}
?>
</tr>
    <tr>
      <td align="left" valign="top"><font size="1" face="Arial, Helvetica, sans-serif">Evt.
        link til flere billeder: </font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input name="link" type="text" value="Http://">
        </font></td>
    </tr>
    <tr>
      <td><font size="1" face="Arial, Helvetica, sans-serif">&nbsp;</font></td>
      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif">
        <input type="submit" value="Tilf&oslash;j Festen" name="upload">
        </font></td>
    </tr>
  </table>
</form>
</body>
</html>
<?
}
?>
Avatar billede detox Nybegynder
02. oktober 2003 - 02:35 #10
Den mangler stadig lidt validering af input. Jeg har fjernet checkboxene ved billederne, da de var overflødige. Ellers ser det ud til at fungere.
Avatar billede big_ossi Nybegynder
02. oktober 2003 - 03:13 #11
med validering mener du ?

jeg vil  prøve den senere... skal på arbejde kl 6 så skal lige ha et par timer

smider du et svar så får du de 200 for dem har du da fortjent.
Avatar billede big_ossi Nybegynder
02. oktober 2003 - 03:43 #12
ja kunne ikke lade være... det ser godt ud online og det virker fint men id bliver ved med at væære 0 den stiger ikke med en hver gang en ny bliver tilføjet
Avatar billede big_ossi Nybegynder
02. oktober 2003 - 03:44 #13
Avatar billede detox Nybegynder
02. oktober 2003 - 04:15 #14
Ok, jeg regnede med at dit id felt var autonummereret. Det er jo nødvendigt, hvis det skal fungere rigtigt. Jeg har lavet den sådan:

CREATE TABLE festene (
  id smallint(5) unsigned NOT NULL auto_increment,
  navn varchar(40) NOT NULL default '',
  dato date NOT NULL default '0000-00-00',
  af varchar(40) NOT NULL default '',
  email varchar(40) NOT NULL default '',
  beskriv text NOT NULL,
  link varchar(40) NOT NULL default '',
  PRIMARY KEY  (id)
) TYPE=MyISAM

Så er der plads til 65535 fester. Måske får du brug for at rette længden på nogle af felterne.

PS: Så håber jeg du får nogle gode timer på øjet :-)
Avatar billede big_ossi Nybegynder
06. oktober 2003 - 20:30 #15
Hey. kan du give lidt mere hjælp til det her database halløj ?

jeg er bare kørt fast....
Avatar billede detox Nybegynder
07. oktober 2003 - 20:51 #16
Hvad er problemet?
Avatar billede big_ossi Nybegynder
07. oktober 2003 - 21:26 #17
Jeg tænkte på at lave en Hot or not altså ikke det vilde. bare så folk kan sige om det er en taber fest eller vinder fest... 1 = taber 2 3 4 5=vinder

Men hvordan laver jeg tabel i mysql som er tilknyttet hver fest som kan få det input så man kan se hvad syntes om den ?

kan jo godt oprette nyt spg hvis det bliver nødvendigt
Avatar billede detox Nybegynder
07. oktober 2003 - 22:01 #18
Det nemmeste er vel at tilføje et felt i tabellen 'festene'. Det kunne fx være en tinyint.
Avatar billede big_ossi Nybegynder
07. oktober 2003 - 22:05 #19
og så bare bruge radio til de fem muligheder ?

når de så stemmer laver den så selv et gennemsnit i den tabel eller hvordan ?
Avatar billede lap Nybegynder
07. oktober 2003 - 22:08 #20
forslag: 2 kolonner: 1 med "antal stemmer" og 1 med "sum af stemmer" - så kan gennemsnit genberegnes hele tiden?
Avatar billede detox Nybegynder
07. oktober 2003 - 22:25 #21
Nå, ja. Jeg er vidst ikke helt vågen. Du må selvfølgelig lave en ny tabel til formålet. Jeg vil foreslå to felter et med id der refererer til id i 'festene' og en til point. MySQL har så en funktion AVG() der beregner gennemsnittet.
Avatar billede big_ossi Nybegynder
07. oktober 2003 - 22:30 #22
okay.. roder lige med det.  takker jer begge
kan godt være jeg vender tilbage *S* hvis jeg ik kan finde ud af det
Avatar billede detox Nybegynder
07. oktober 2003 - 22:31 #23
Tabellen kunne se sådan ud:

CREATE TABLE `fest_stemmer` (
  `fest_id` smallint(5) unsigned NOT NULL default '0',
  `point` tinyint(3) unsigned NOT NULL default '0'
) TYPE=MyISAM

og eksempel på forespørgsel:

SELECT AVG( point )
FROM  `fest_stemmer`
WHERE fest_id = 2
Avatar billede big_ossi Nybegynder
07. oktober 2003 - 22:33 #24
*S* ja jeg har det jo som blommen i et æg..

du skal ha tak.
Har du en homepage så kan du komme under tak til på siden hvis du vil ?
Avatar billede detox Nybegynder
07. oktober 2003 - 22:46 #25
Lige et eksempel på hvordan du fx kan liste de 10 bedste fester med procenter:

SELECT b.navn, ROUND( AVG( a.point )  * 20  ) procent
FROM  `fest_stemmer` a
JOIN festene b ON a.fest_id = b.id
GROUP  BY a.fest_id
ORDER  BY procent DESC
LIMIT 0 , 10
Avatar billede detox Nybegynder
07. oktober 2003 - 22:59 #26
Og, nej jeg har ikke en officiel hjemmeside, ellers mange tak.
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