Autor Zpráva
dvora21
Profil *
Zdravím prosím vás delam si download sekci a potreboval kdys se to zapisuje do mysql tak bych potreboval pred zapisem zmenit tabulku (kategorii) ale nevim jak:

<?
if ($akce == "Upload") {
  if ($soubor_type == "text/plain" or $soubor_type="text/html") {
    if (copy ($soubor, "data/$soubor_name")) {
      print "Soubor $soubor_name o velikosti $soubor_size bajtů
       byl úspěšně uploadnut na server<BR>";
$host="localhost";
$user="root";
$pw="vertrigo";
$db="test";
mysql_connect($host, $user, $pw);
mysql_select_db($db);
mysql_connect($host, $user, $pw);
mysql_select_db($db);
/*
mysql_query("CREATE TABLE `updownload` (`Name` VARCHAR(255) NOT NULL, `Popis` VARCHAR(255) NOT NULL, `Licence` VARCHAR(255) NOT NULL, `URL` VARCHAR(255) NOT NULL) ENGINE = myisam;");
*/
mysql_query("INSERT INTO `software_pc` VALUES ('$name', '$popis', '$licence', '$soubor_name')");
    }
    else {
      print "Při nahrávání souboru došlo k chybě!<BR>";
    }
  }
  else {
    print "Soubor není požadového MIME typu!<BR>";
  }
}
        ?> 

form:
<center><form ACTION="upload.php" METHOD="post" ENCTYPE="multipart/form-data">
<input TYPE="file" NAME="soubor" SIZE="30"><br><br>
Name:<br><input type="text" name="name" size="48"><br>
Popis:<br><input type="text" name="popis" size="48"><br>
Licence:<br><input type="text" name="licence" size="48"><br>
 <select name="kategorie">
    <option value="4">Neni vybrana kategorie...</option>
    <option value="1">Software - PC</option>
    <option value="2">Software - Java</option>
    <option value="3">Games - Java</option>

  </select>&nbsp;&nbsp;&nbsp;&nbsp;<input TYPE="submit" NAME="akce" VALUE="Upload"><br></center>
</form>
dvora21
Profil *
na ty kategorie jsem to udelal takto:
$kategorie = $_post["kategorie"];

if($kategorie == "1") echo "software_pc";
elseif($kategorie == "2") echo "software_java";
elseif($kategorie == "3") echo "games_java";
else echo "?";


ale nevim jak to tam dat.
a vubec nevim jesly se to dela takto.
Mastodont
Profil
Prostě v řádku
mysql_query("INSERT INTO `software_pc` VALUES ('$name', '$popis', '$licence', '$soubor_name')");

budeš namísto `software_pc`dávat název tabulky pro vybranou kategorii.
dvora21
Profil *
jo ale jak to mám udelat aby se to sautomatizovalo prete to nebudu prepisovat
dvora21
Profil *
ja jsem to tam dal ale proste error
dvora21
Profil *
To mi je je jasny od zacatku ze to mam dat dostrebu tam kde je nazev tabulky asi kdys sem to psal ale ja bych potreboval poradit jak to tam mam dat protoze jen tak hodit to tam nemuzu
Mastodont
Profil
No jestli neumíš spojovat stringy pomocí tečky, tak by bylo lepší se do ničeho většího nepouštět.
dvora21
Profil *
Prosím ukázal by ste mi jak se to spojuje ?
honza_
Profil *
<?php
$predpona = "za";
$koren = "hrad";
$koncovka = "a";
echo $predpona . $koren . $koncovka; //vypíše zahrada
?>
dvora21
Profil *
no jo ale jak to mam vlozit do tohodle nedivte se ja to delam po prví
mysql_query("INSERT INTO `software_pc` VALUES ('$name', '$popis', '$licence', '$soubor_name')");
dvora21
Profil *
ale i kdys tak tohle tam nemuzu dat protoze ty kategorie a ty tabulky jsou pojmenovany uplne odlisne takze by to tam neslo dat
dvora21
Profil *
nemuze se do toho noralne vlozit neak toto:
if($kategorie == "1") echo "software_pc";
elseif($kategorie == "2") echo "software_java";
elseif($kategorie == "3") echo "games_java";
else echo "no_db";
AM_
Profil
kategorii bys mel mit jakou sloupec tabulky a ne spoustu tabulek.
dvora21
Profil *
to prave neumim udelat
dvora21
Profil *
Napsal by ste mi nazornou ukazku ?
dvora21
Profil *
prosím jak to mám udelat taky aby se mi menily ty kategorie
dvora21
Profil *
Prosím jak mám udelat aby se mi menily kategorie ve formulari a odeslaly se primo do ty databaze ktarou vyberu dekuji
dvora21
Profil *
Formular:
<form ACTION="upload.php" METHOD="post" ENCTYPE="multipart/form-data">
<table border="0" bordercolor="black" bgcolor="white">
<tr><td>Soubor:</td><td><input TYPE="file" NAME="soubor" SIZE="33"></td></tr> 
<tr><td>Screen:</td><td><input value="http://"type="text" name="name" size="48"></td></tr> 
<tr><td>Jméno:</td><td><input type="text" name="name" size="48"></td></tr> 
<tr><td>Licence:</td><td><input type="text" name="licence" size="48"</td></tr> 
<tr><td>Popis:</td><td><input type="text" name="popis" size="48"></td></tr> 
<tr><td><select name="kategorie">    
        <option value="4">Neni vybrana kategorie...
        </option>    
        <option value="1">Software - PC
        </option>    
        <option value="2">Software - Java
        </option>    
        <option value="3">Games - Java
        </option>  
      </select></td><td align="right"><input TYPE="submit" NAME="akce" size="10" VALUE="Upload"></td></tr>
</table>

Upload:
<?
if ($akce == "Upload") {
  if ($soubor_type == "text/plain" or $soubor_type="text/html") {
    if (copy ($soubor, "data/$soubor_name")) {
      print "Soubor $soubor_name o velikosti $soubor_size bajtů
       byl úspěšně uploadnut na server<BR>";
$host="localhost";
$user="root";
$pw="vertrigo";
$db="test";
mysql_connect($host, $user, $pw);
mysql_select_db($db);
mysql_connect($host, $user, $pw);
mysql_select_db($db);
/*
mysql_query("CREATE TABLE `updownload` (`Name` VARCHAR(255) NOT NULL, `Popis` VARCHAR(255) NOT NULL, `Licence` VARCHAR(255) NOT NULL, `URL` VARCHAR(255) NOT NULL) ENGINE = myisam;");
*/
mysql_query("INSERT INTO `if($kategorie == "1") echo "software_pc";
elseif($kategorie == "2") echo "software_java";
elseif($kategorie == "3") echo "games_java";
else echo "?";` VALUES ('$name', '$screen_url', '$popis', '$licence', '$soubor_name', '$soubor_size')");
    }
    else {
      print "Při nahrávání souboru došlo k chybě!<BR>";
    }
  }
  else {
    print "Soubor není požadového MIME typu!<BR>";
  }
}
        ?>    
    <hr SIZE="1" NOSHADE>Zadejte jméno souboru:     
    <form ACTION="upload.php" METHOD="post" ENCTYPE="multipart/form-data">      
      <input TYPE="file" NAME="soubor" SIZE="30">      
      <input TYPE="submit" NAME="akce" VALUE="Upload">    
    </form>  
AM_
Profil
CREATE TABLE zbozi(
kategorie VARCHAR(255),
name VARCHAR(255)
...
...
);
$kat = (" ", "software_pc", "software_java", "games_java".....);
"INSERT INTO zbozi (kategorie, name, ...) VALUES ('${kat[$id_kategorie]}', '$name' ...);

Samozřejmě to není funkční kód, jen nastínění pro názornost, celý kód se mi vypisovat nechce.
Labužníci by mohli podotknout, že místo kategorie jako VARCHAR by bylo lepší udělat sloupec id_kategorie a propojit ho s tabulkou kategorií, ale myslím, že ty budeš rád, když zprovozníš tohle, nechci ti plést hlavu spojováním tabulek.
dvora21
Profil *
stim id_kategorie se mi to zamlouva
AM_
Profil
jo? potom si místo kategorie VARCHAR dej do zboží sloupec id_kategorie INT, a udělej si tabulku:
CREATE TABLE kategorie (
id INT NOT NULL AUTO_INCREMENT,
jmeno VARCHAR(255),
PRIMARY KEY(id)
);
potom můžeš vybírat SELECT kategorie.jmeno as kategorie, name, popis, licence ... FROM zbozi LEFT JOIN kategorie on kategorie.id = zbozi.id_kategorie
pro začátečníka s databází je to trochu složitější, ale má to různé výhody, např. že databáze bude více optimalizovaná - u každého zboží nebude 255 bytů vyhrazených na název kategorie, ale jen 4 byte (tuším) pro ID.
dvora21
Profil *
ted netuším dal by ste mi Jabber nebo ICQ jsem ted uplne mimo :-(
SwimX
Profil
dvora21
jsem ted uplne mimo :-(
Ne teď. Ty jsi mimo pořád. Tvé dotazy jsou všechny stejné, nesmyslné, nelogické, člověk půl hodiny dekoduje cože to chceš, hrubky nepočítám, už sem se s nima naučil žít.


abys neřek, ukážu ti ty tvoje kategorie:
if($kategorie == "1") $kat = "software_pc";
elseif($kategorie == "2") $kat = "software_java";
elseif($kategorie == "3") $kat = "games_java";
mysql_query("INSERT INTO `$kat` VALUES ('$name', '$popis', '$licence', '$soubor_name')");
AM_
Profil
dvora21
něco si o databázích buď nastuduj, nebo raději zůstaň u toho jednoduššího řešení... přes to ICQ bych ti mohl maximálně odpřednášet online příručku, což nemá moc smysl.
dvora21
Profil *
jéé dekuji moc

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: