26-03-2013, 02:42
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> </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> </td><td> </td></tr>";
for ($i=0;$i<$wierszy;$i++) {
$wiersz = mysql_fetch_array($wynik);
echo "<tr>";
echo "<td>".$wiersz["id"]." </td>";
echo "<td>".$wiersz["data"]." </td>";
echo "<td>".$wiersz["miejsce"]." </td>";
echo "<td>".$wiersz["tytul"]." </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>
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> </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> </td><td> </td></tr>";
for ($i=0;$i<$wierszy;$i++) {
$wiersz = mysql_fetch_array($wynik);
echo "<tr>";
echo "<td>".$wiersz["id"]." </td>";
echo "<td>".$wiersz["data"]." </td>";
echo "<td>".$wiersz["miejsce"]." </td>";
echo "<td>".$wiersz["tytul"]." </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>