Upload fisier si adaugare in mysql

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
Wayn3
Mesaje:111

Upload fisier si adaugare in mysql

Salutare baieti..
Uitati cu ce vreau sa ma ajutati.. am asa :
file.php

Cod: Selectaţi tot

<form action="file.php?actiune=processed" method="post">
<input type="text" name="blabla">
<input type="file" name="upload">
<input type="submit" name="submit" value="Upload" /> 
</form>
file.php?actiune=processed

Cod: Selectaţi tot

switch($_GET['actiune'])
{
case 'processed':

<?php 

$uploadpath = "upload/";
$max_size = 30000;
$allowtype = array('mp4');

if(isset($_POST['submit'])) {
  if (isset ($_FILES['fisiere'])) {
    $uploadpath = $uploadpath . basename( $_FILES['fisiere']['name']);
    $type = end(explode(".", strtolower($_FILES['fisiere']['name'])));

    // Daca fisierul are extensia permisa
    if (in_array($type, $allowtype)) {
      // Verifica daca fisierul are marimea permisa
      if ($_FILES['fisiere']['size']<=$max_size*1000) {
        if(move_uploaded_file($_FILES['fisiere']['tmp_name'], $uploadpath)) { 
          echo "Fisierul:<b> ". basename( $_FILES['fisiere']['name']). "</b> a fost incarcat cu succes:"; 
          echo "<br />Tipul fisieului:<b> ". $_FILES['fisiere']['type'] ."</b>"; 
          echo "<br />Marime  (<i>in Bytes</i>): <b>". $_FILES['fisiere']['size'] ."</b><br /><br />";
          echo 'Link catre fisierul incarcat: <b>'.$uploadpath.'</b>';
        }
        else { 
          echo "<b>A aparut o eroare la urcarea fisierului pe server, <br /> posibil ca marimea fisierului sa depaseasca permisiunile setate de server.</b>"; 
        }
      }
      else { echo 'Fisierul <b>'. $_FILES['fisiere']['name']. '</b> depaseste marimea permisa de maxim <i><b>'. $max_size. 'KB</b></i>'; }
    }
    else { echo 'Fisierul <b>'. $_FILES['fisiere']['name']. '</b> nu are tipul de extensie permis'; }
  }
}
?>

$cerereSQL = "INSERT subspages SET 
blabla='".$_SESSION['blabla']."', 
upload='".$_SESSION['upload']."' ";
mysql_query($cerereSQL);
Am simplificat mult pagina pe care o am , pana la punctul de a putea fi usor de explicat.
Cand apas butonul upload , imi adauga datele in tabel..dar problema e ca nu imi uploadeaza si fisierul. Am incercat cu o groaza de metode sa-l fac sa functioneze dar nu am reusit decat sa fac sa imi iasa creierul pe urechi de nervi :lol: .
Daca scot din pagina querry-ul si celelalte elemente din formular , astfel incat sa imi ramana doar ce am nevoie pt upload, functioneaza corect .. Nu stiu de ce nu uploadeaza fisierul daca in acea pagina am si un mysql querry ... nu stiu de ce nu actioneaza simultan..

MarPlo Mesaje:4343
Codul pt. Insert in tabel ar trebui adaugat imediad dupa linia care face Upload la fisier, cam asa:

Cod: Selectaţi tot

if(move_uploaded_file($_FILES['fisiere']['tmp_name'], $uploadpath)) {
  $cerereSQL = "INSERT subspages SET blabla='".$_SESSION['blabla']."', upload='".$_SESSION['upload']."' ";
  mysql_query($cerereSQL);
  // ... restul
}
- dupa cum e codul, trebuie sa existe acele sesiuni cu valori pe care vrei sa le adaugi in baza de date (sau poate trebuie $_POST).
Ca sa verifici comanda SQL, ce date transmite, adaugi un: echo cerereSQL;

Wayn3 Mesaje:111
Nu se vede butonul edit... scuze.
Am descoperit problema.. nu adaugasem enctype="multipart/form-data" in form.. Nu realizasem cat de importanta e , pana acum.

Subiecte similare