Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
upload pdf oraz doc/rtf w jednym formularzu
#1
witam,

Jestem początkujący i dopiero co uczę się php/mysql co sprawia, że korzystam z cudzych skryptów znalezionych gdzieś w necie...
Od jakiegoś czasu zmagam się z problemem dodawania ogłoszenia i do niego plików pdf (do katalogu DOC )wraz z doc/rtf.
Ogłoszenie dodaje się prawidłowo i za każdym razem, natomiast problem tkwi w plikach pdf które to chcę dodać.
Niestety pomimo wielu prób nie działa to razem. Doprowadziłem do sytuacji w której działa albo dodawanie pdf albo doc/rtf.
W oryginalnym wydaniu skryptu dodawany był plik JPG - przerobiłem na własne potrzeby dodawanie doc/rtf.
Bardzo proszę o podpowiedź, ew. zmiany w skrypcie celem poprawnego dodawania plików PDF.

<?
$sql_host = "localhost";
$sql_user = "user";
$sql_password = "haslo";
$sql_baza = "baza";
$sql_tabela = "nieruchomosci";

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">

<title>Administracja - nieruchomości</title>
<style type="text/css">
<!--
body, td, p, center { font-family: Arial; font-size: 12px; }
--></style>
</head><body><center>
<?

$skrypt = $_SERVER["PHP_SELF"]; // adres skryptu
$ac = trim($_REQUEST["ac"]); // podjęta akcja
$sz = trim($_REQUEST["sz"]); // ciąg do wyszukiwania
$id = trim($_REQUEST["id"]);
$data = trim($_REQUEST["data"]);
$miejsce = trim($_REQUEST["miejsce"]);
$tytul = trim($_REQUEST["tytul"]);

echo "<center><br><a target=\"blank\" href=\"index.php\">powrot</a><br><br></center>";
echo <<<KONIEC
<table><tr><td><a href="$skrypt?ac=form">nowa nieruchomosc</a></td><td>
<form action="$skrypt" method="post" style="margin:0px;">
<input type="hidden" name="ac" value="szukaj">
<input type="text" name="sz">
<input type="submit" value=" szukaj ">
</form>
</td></tr></table>
KONIEC;

// ======================== POBIERANIE DANYCH DO ZMIANY
if ($ac=="zmien" and $id<>"") {
$baza = mysql_connect($sql_host, $sql_user, $sql_password);
if ($baza) {
$wynik = mysql_select_db($sql_baza);
if ($wynik) {
$wynik = mysql_query("SELECT * FROM $sql_tabela WHERE id=$id");
if ($wynik) {
$pole = mysql_fetch_array($wynik);
$id = htmlspecialchars($pole["id"], ENT_QUOTES);
$data = htmlspecialchars($pole["data"], ENT_QUOTES);
$miejsce = htmlspecialchars($pole["miejsce"], ENT_QUOTES);
$tytul = htmlspecialchars($pole["tytul"], ENT_QUOTES);
}
}
mysql_close($baza);
}
$ac="form";
}


// ======================== FORMULARZ DODAWANIA/AKTUALIZACJI DANYCH
if ($ac=="form") {
if ($data=="") $data = date("Y-m-d H:i");
echo <<<KONIEC
<form action="$skrypt" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="100000" enctype="multipart/form-data">
<input type="hidden" name="ac" value="dodaj">
<input type="hidden" name="id" value="$id">
<table border=0>
<tr><td>data: </td><td><input type="text" name="data"
value="$data" style="width:200px;"></td></tr>
<tr><td>miejsce: </td><td><input type="text" name="miejsce"
value="$miejsce" style="width:400px;"></td></tr>
<tr><td>tytuł: </td><td><input type="text" name="tytul"
value="$tytul" style="width:400px;"></td></tr>
<tr><td>plik: </td><td><input name="plik" type="file"></td></tr>

<tr><td>&nbsp;</td><td><input type="submit" value=" dodaj "><input type=button value="zamknij" onClick="document.location='index.php'"></td></tr>
</table></form>
KONIEC;

}


// ======================== DODANIE/AKTUALIZACJA W BAZIE
if ($ac=="dodaj") {
$baza = mysql_connect($sql_host, $sql_user, $sql_password);
if ($baza) {
$wynik = mysql_select_db($sql_baza);
if ($wynik && $id=="") {
$wynik = mysql_query("
INSERT INTO $sql_tabela (data, miejsce, tytul)
VALUES ('$data','$miejsce','$tytul')
");
if (preg_match("/\.doc$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".mysql_insert_id().".doc");
if (preg_match("/\.doc$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".mysql_insert_id().".rtf");
if (preg_match("/\.doc$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".mysql_insert_id().".pdf");
}
}
if ($wynik && $id<>"") {
$wynik = mysql_query("
UPDATE $sql_tabela
SET data='$data', miejsce='$miejsce', tytul='$tytul'
WHERE id=$id;
");
if (is_uploaded_file($_FILES["plik"]["tmp_name"])) {
if (file_exists("./doc/".$id.".doc"))
@unlink("./doc/".$id.".doc");
if (file_exists("./doc/".$id.".rtf"))
@unlink("./doc/".$id.".rtf");
if (file_exists("./doc/".$id.".pdf"))
@unlink("./doc/".$id.".pdf");
if (preg_match("/\.doc$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".$id.".doc");
if (preg_match("/\.rtf$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".$id.".rtf");
if (preg_match("/\.pdf$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".$id.".pdf");
}
}
if ($wynik) echo "<br>Rekord został poprawnie dodany/uaktualniony";
else echo "<br>Rekord nie został dodany/uaktualniony: ".mysql_error();
mysql_close($baza);
$ac="szukaj";
$szid=$id;
}



// ======================== USUWANIE DANYCH
if ($ac=="kasuj" and $id<>"") {
$baza = mysql_connect($sql_host, $sql_user, $sql_password);
if ($baza) {
$wynik = mysql_select_db($sql_baza);
if ($wynik) {
$wynik = mysql_query("DELETE FROM $sql_tabela WHERE id=$id;");
if (file_exists("./doc/".$id.".doc"))
@unlink("./doc/".$id.".doc");
if (file_exists("./doc/".$id.".rtf"))
@unlink("./doc/".$id.".rtf");
if (file_exists("./doc/".$id.".pdf"))
@unlink("./doc/".$id.".pdf");
}
if ($wynik) echo "<br>Rekord został poprawnie usunięty";
else echo "<br>UWAGA: Rekord nie został usunięty: ".mysql_error();
mysql_close($baza);
}
}


// ======================== SZUKANIE DANYCH
if ($ac=="szukaj") {
$baza = mysql_connect($sql_host, $sql_user, $sql_password);
if ($baza) {
$wynik = mysql_select_db($sql_baza);
if ($wynik) {
if ($sz<>"") {
$wynik = mysql_query("
SELECT * FROM $sql_tabela
WHERE (tytul like '%$sz%' or tekst like '%$sz%')
ORDER BY data DESC
");
} else if ($szid<>"") {
$wynik = mysql_query("SELECT * FROM $sql_tabela WHERE id=$szid");
} else {
$wynik = mysql_query("SELECT * FROM $sql_tabela
ORDER BY data DESC LIMIT 50");
}
$wierszy = mysql_num_rows($wynik);
$pol = mysql_num_fields($wynik);
}
mysql_close($baza);

if ($wierszy>0) {
echo "<table border=1 cellpadding=4 cellspacing=0>";
echo "<tr><td><b>id</b></td><td><b>data i godzina</b></td>
<td><b>miejsce</b></td></td>
<td><b>tytuł</b></td></td>
<td>&nbsp;</td><td>&nbsp;</td></tr>";
for ($i=0;$i<$wierszy;$i++) {
$wiersz = mysql_fetch_array($wynik);
echo "<tr>";
echo "<td>".$wiersz["id"]."&nbsp;</td>";
echo "<td>".$wiersz["data"]."&nbsp;</td>";
echo "<td>".$wiersz["miejsce"]."&nbsp;</td>";
echo "<td>".$wiersz["tytul"]."&nbsp;</td>";
echo "<td><a href=\"$skrypt?ac=zmien&id={$wiersz["id"]}\"
>zobacz/zmień</a></td>
<td><a href=\"$skrypt?ac=kasuj&id={$wiersz["id"]}\"
>kasuj</a></td></tr>";
}
echo "</table>";
}
}
}
?>

</center></body></html>
Odpowiedz
#2
Jak wprowadzasz kod to skorzystaj z odpowiednich narzędzi do tego, bo źle się to czyta.
Kod PHP:
echo 'to jest poprawnie wstawiony text'
cały czas się czegoś uczę
mogę palnąć jakąś głupotę Tongue
Odpowiedz
#3
(26-03-2013, 14:16)ILIES napisał(a): Jak wprowadzasz kod to skorzystaj z odpowiednich narzędzi do tego, bo źle się to czyta.
Kod PHP:
echo 'to jest poprawnie wstawiony text'
Kod PHP:
<?
$sql_host 
"localhost";
$sql_user "user";
$sql_password "haslo";
$sql_baza "baza";
$sql_tabela "nieruchomosci";

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">

<title>Administracja - nieruchomości</title>
<style type="text/css">
<!--
body, td, p, center { font-family: Arial; font-size: 12px; }
--></style>
</head><body><center>
Kod PHP:
<?

$skrypt 
$_SERVER["PHP_SELF"]; // adres skryptu
$ac trim($_REQUEST["ac"]); // podjęta akcja
$sz trim($_REQUEST["sz"]); // ciąg do wyszukiwania
$id trim($_REQUEST["id"]);
$data trim($_REQUEST["data"]);
$miejsce trim($_REQUEST["miejsce"]);
$tytul trim($_REQUEST["tytul"]);

echo 
"<center><br><a target=\"blank\" href=\"index.php\">powrot</a><br><br></center>";
echo <<<KONIEC
<table><tr><td><a href="$skrypt?ac=form">nowa nieruchomosc</a></td><td>
<form action="
$skrypt" method="post" style="margin:0px;">
<input type="hidden" name="ac" value="szukaj">
<input type="text" name="sz">
<input type="submit" value=" szukaj ">
</form>
</td></tr></table>
KONIEC;

// ======================== POBIERANIE DANYCH DO ZMIANY
if ($ac=="zmien" and $id<>"") {
$baza mysql_connect($sql_host$sql_user$sql_password);
if (
$baza) {
$wynik mysql_select_db($sql_baza);
if (
$wynik) {
$wynik mysql_query("SELECT * FROM $sql_tabela WHERE id=$id");
if (
$wynik) {
$pole mysql_fetch_array($wynik);
$id htmlspecialchars($pole["id"], ENT_QUOTES);
$data htmlspecialchars($pole["data"], ENT_QUOTES);
$miejsce htmlspecialchars($pole["miejsce"], ENT_QUOTES);
$tytul htmlspecialchars($pole["tytul"], ENT_QUOTES);
}
}
mysql_close($baza);
}
$ac="form";
}


// ======================== FORMULARZ DODAWANIA/AKTUALIZACJI DANYCH
if ($ac=="form") {
if (
$data==""$data date("Y-m-d H:i");
echo <<<KONIEC
<form action="$skrypt" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="100000" enctype="multipart/form-data">
<input type="hidden" name="ac" value="dodaj">
<input type="hidden" name="id" value="
$id">
<table border=0>
<tr><td>data: </td><td><input type="text" name="data"
value="
$data" style="width:200px;"></td></tr>
<tr><td>miejsce: </td><td><input type="text" name="miejsce"
value="
$miejsce" style="width:400px;"></td></tr>
<tr><td>tytuł: </td><td><input type="text" name="tytul"
value="
$tytul" style="width:400px;"></td></tr>
<tr><td>plik: </td><td><input name="plik" type="file"></td></tr>

<tr><td>&nbsp;</td><td><input type="submit" value=" dodaj "><input type=button value="zamknij" onClick="document.location='index.php'"></td></tr>
</table></form>
KONIEC;

}


// ======================== DODANIE/AKTUALIZACJA W BAZIE
if ($ac=="dodaj") {
$baza mysql_connect($sql_host$sql_user$sql_password);
if (
$baza) {
$wynik mysql_select_db($sql_baza);
if (
$wynik && $id=="") {
$wynik mysql_query("
INSERT INTO 
$sql_tabela (data, miejsce, tytul)
VALUES ('
$data','$miejsce','$tytul')
"
);
if (
preg_match("/\.doc$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".mysql_insert_id().".doc");
if (
preg_match("/\.doc$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".mysql_insert_id().".rtf");
if (
preg_match("/\.doc$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".mysql_insert_id().".pdf");
}
}
if (
$wynik && $id<>"") {
$wynik mysql_query("
UPDATE 
$sql_tabela
SET data='
$data', miejsce='$miejsce', tytul='$tytul'
WHERE id=
$id;
"
);
if (
is_uploaded_file($_FILES["plik"]["tmp_name"])) {
if (
file_exists("./doc/".$id.".doc"))
@
unlink("./doc/".$id.".doc");
if (
file_exists("./doc/".$id.".rtf"))
@
unlink("./doc/".$id.".rtf");
if (
file_exists("./doc/".$id.".pdf"))
@
unlink("./doc/".$id.".pdf");
if (
preg_match("/\.doc$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".$id.".doc");
if (
preg_match("/\.rtf$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".$id.".rtf");
if (
preg_match("/\.pdf$/i",$_FILES["plik"]["name"]))
move_uploaded_file($_FILES["plik"]["tmp_name"],
"./doc/".$id.".pdf");
}
}
if (
$wynik) echo "<br>Rekord został poprawnie dodany/uaktualniony";
else echo 
"<br>Rekord nie został dodany/uaktualniony: ".mysql_error();
mysql_close($baza);
$ac="szukaj";
$szid=$id;
}



// ======================== USUWANIE DANYCH
if ($ac=="kasuj" and $id<>"") {
$baza mysql_connect($sql_host$sql_user$sql_password);
if (
$baza) {
$wynik mysql_select_db($sql_baza);
if (
$wynik) {
$wynik mysql_query("DELETE FROM $sql_tabela WHERE id=$id;");
if (
file_exists("./doc/".$id.".doc"))
@
unlink("./doc/".$id.".doc");
if (
file_exists("./doc/".$id.".rtf"))
@
unlink("./doc/".$id.".rtf");
if (
file_exists("./doc/".$id.".pdf"))
@
unlink("./doc/".$id.".pdf");
}
if (
$wynik) echo "<br>Rekord został poprawnie usunięty";
else echo 
"<br>UWAGA: Rekord nie został usunięty: ".mysql_error();
mysql_close($baza);
}
}


// ======================== SZUKANIE DANYCH
if ($ac=="szukaj") {
$baza mysql_connect($sql_host$sql_user$sql_password);
if (
$baza) {
$wynik mysql_select_db($sql_baza);
if (
$wynik) {
if (
$sz<>"") {
$wynik mysql_query("
SELECT * FROM 
$sql_tabela
WHERE (tytul like '%
$sz%' or tekst like '%$sz%')
ORDER BY data DESC
"
);
} else if (
$szid<>"") {
$wynik mysql_query("SELECT * FROM $sql_tabela WHERE id=$szid");
} else {
$wynik mysql_query("SELECT * FROM $sql_tabela
ORDER BY data DESC LIMIT 50"
);
}
$wierszy mysql_num_rows($wynik);
$pol mysql_num_fields($wynik);
}
mysql_close($baza);

if (
$wierszy>0) {
echo 
"<table border=1 cellpadding=4 cellspacing=0>";
echo 
"<tr><td><b>id</b></td><td><b>data i godzina</b></td>
<td><b>miejsce</b></td></td>
<td><b>tytuł</b></td></td>
<td>&nbsp;</td><td>&nbsp;</td></tr>"
;
for (
$i=0;$i<$wierszy;$i++) {
$wiersz mysql_fetch_array($wynik);
echo 
"<tr>";
echo 
"<td>".$wiersz["id"]."&nbsp;</td>";
echo 
"<td>".$wiersz["data"]."&nbsp;</td>";
echo 
"<td>".$wiersz["miejsce"]."&nbsp;</td>";
echo 
"<td>".$wiersz["tytul"]."&nbsp;</td>";
echo 
"<td><a href=\"$skrypt?ac=zmien&id={$wiersz["id"]}\"
>zobacz/zmień</a></td>
<td><a href=\"
$skrypt?ac=kasuj&id={$wiersz["id"]}\"
>kasuj</a></td></tr>"
;
}
echo 
"</table>";
}
}
}
?>
</center></body></html>
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Smarty, książki oraz Szablon HTML5 Morfeusz_2005 1 2,635 18-11-2013, 14:34
Ostatni post: prawdziwypiotrek
  Upload filmów na swoją stronę z zewnętrznym free hostingiem nutyorg 1 2,814 19-07-2013, 16:44
Ostatni post: mateo
  przekierowanie na mobilną wersję strony oraz z mobilnej na full zaxxx 5 5,205 15-04-2013, 04:03
Ostatni post: zaxxx
  Uciekająca strona w IE8 [CSS] oraz problem z PHP nimbostratus 5 4,475 15-11-2012, 03:31
Ostatni post: Kartofelek
  UPLOAD PLIKÓW/DOWNLOAD PLIKÓW! GeoAce5 8 6,195 30-05-2012, 04:57
Ostatni post: Pedro84

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl