Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Closed TopicStart new topic
> Pomoc lecz inna pomoc!
kubatron
post 19.12.2003, 22:28:52
Post #1





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


Witam pisze w sprawie skryptu newsów napisałem skrypt dodawania i wyswietlania i zaczełem pisać edycji i usuwania i pokazywania wybranego newsa:
index.php - główny plik wyświetlający newsy.
[php:1:eaab6801ce]<?php
mysql_connect ("localhost", "root", "krasnal") or
die ("Nie można połączyć się z MySQL");
mysql_select_db ("news") or
die ("Nie można połączyć się z bazą danych.;");
$pyt = ("SELECT * FROM news ORDER BY data DESC");
$result = mysql_query($pyt) or die ("Błąd zapytania: $pyt");
while($row = mysql_fetch_array($result)) {
echo "<table width="400" cellspacing="0" cellpadding="0" border="0" style="BORDER-RIGHT: #000000 1px solid; BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid;">";
echo "<tr>";
echo "<td>";
echo "<div id=t2>nr." . $row[0] . "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" . $row[1] . "</div>";
echo "<a href="$row[2]" target="blank_"><img src=$row[2] width="250" height="180"></a>&nbsp;&nbsp;" . $row[3] ."";
echo "<br><div id=t1><p class=data>Data dodania:" . $row[6] ."&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Autor:&nbsp;&nbsp;<a href=mailto:" . $row[5] . " title="Autor newsa: $row[4]">" . $row[4] . "</a></div>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "<br>";
}
?>[/php:1:eaab6801ce]
admin.php - plik z dodawaniem rekordów(bedzię głównym plikiem z opcjami administracyjnymi newsów) narazie tak jak jest
[php:1:eaab6801ce]<?php
mysql_connect ("localhost", "root", "krasnal") or
die ("Nie można połączyć się z MySQL");
mysql_select_db ("news") or
die ("Nie można połączyć się z bazą danych.;");
echo "<table width="600" cellspacing="0" cellpadding="0" border="1">";
echo "<tr>";
echo "<td>";
echo "<div id=t2>Dodawanie newsów:</div>";
echo "<form action="dodaj.php" enctype="multipart/form-data" method="post">";
echo "<input type="hidden" name="pyt" value="dodaj"><br>";
echo "Idnews:<font color=red>Wypis samoczynny.</font><br>";
echo "Nagłówek:<input type="text" name="naglowek"><br>";
echo "Zdjecie:<input type="text" name="image" size="40"><br>";
echo "Treść:<textarea name="tresc" cols="45" rows="15"></textarea><br>";
echo "User:<input type="text" name="user"><br>";
echo "Email:<input type="text" name="mail"><br>";
echo "Data: <font color=red>Wypis samoczynny.</font><br>";
echo "<input type="submit" value="Dodaj newsa">";
echo "<input type="reset" value="Wyczyść">";
echo "</form>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</tbody>";
?>[/php:1:eaab6801ce]
dodaj.php - plik wykonujący zapytanie dodające do tabeli news dane
[php:1:eaab6801ce]<?php
mysql_connect ("localhost", "root", "krasnal") or
die ("Nie można połączyć się z MySQL");
mysql_select_db ("news") or
die ("Nie można połączyć się z baz&plusmn;");
if($pyt == 'dodaj') {
$pyt = "INSERT INTO news (idnews, naglowek, image, tresc, user, mail, data) VALUES ('$idnews', '$naglowek', '$image', '$tresc', '$user', '$mail', now());";
$wynik = mysql_query($pyt);
} else {
echo "Zapytanie zostało wykonane poprawnie wróć do panelu administracyjnego";
}
?>[/php:1:eaab6801ce]
opcje.php - plik mający za zadanie wyświetlić opcje Pokazywania danego newsa usuwania i edytowania
[php:1:eaab6801ce]<?php
mysql_connect ("localhost", "root", "krasnal") or
die ("Nie można połączyć się z MySQL");
mysql_select_db ("news") or
die ("Nie można połączyć się z bazą danych.;");
$pyt = ("SELECT * FROM news ORDER BY idnews DESC");
$result = mysql_query($pyt) or die ("Błąd zapytania: $pyt");
while($row = mysql_fetch_array($result)) {
echo "<a href=pokaz.php?f=show&id={$row['idnews']}>Pokaż news id {$row['idnews']}</a><br><br><a href=edit.php?f=edit&id={$row['idnews']}>Edytuj newsy</a>&nbsp;&nbsp;&nbsp;&nbsp;";
echo "<a href=delete.php?f=delete&id={$row['idnews']}>Usuwaj newsy</a><br><hr width="160" color="black">";
}
?>[/php:1:eaab6801ce]
edit.php - plik który wyświetla formularz w którym jest wyświetlony dany news i można zmienić jego zawartośc(i tu jest błąd)
[php:1:eaab6801ce]<?php
mysql_connect ("localhost", "root", "krasnal") or
die ("Nie można połączyć się z MySQL");
mysql_select_db ("news") or
die ("Nie można połączyć się z bazą danych.;");
if ($pyt == 'dodaj') {
$pyt = ("SELECT * FROM news WHERE id='.$_GET['idnews'].')";
$result = mysql_query($pyt);
$row = mysql_fetch_array($result);
}
echo "<table width="600" cellspacing="0" cellpadding="0" border="1">";
echo "<tr>";
echo "<td>";
echo "<div id=t2>Edycja newsów:</div>";
echo "<form action="update.php" enctype="multipart/form-data" method="post">";
echo "<input type="hidden" name="pyt" value="popraw"><br>";
echo "Idnews:<font color=red>Wypis samoczynny.</font><br>";
echo "Nagłówek:<input type="text" name=" . $row['naglowek'] . "><br>";
echo "Zdjecie:<input type="text" name=" . $row['image'] . " size="40"><br>";
echo "Treść:<textarea name=" . $row['tresc'] . " cols="45" rows="15"></textarea><br>";
echo "User:<input type="text" name=" . $row['user'] . "><br>";
echo "Email:<input type="text" name=" . $row['mail'] . "><br>";
echo "Data: <font color=red>Wypis samoczynny.</font><br>";
echo "<input type="submit" value="Dodaj newsa">";
echo "<input type="reset" value="Wyczyść">";
echo "</form>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</tbody>";
?>[/php:1:eaab6801ce]
gdy w opcje.php wciskam Edytuj newsa i w linku jest jego id to wyskakuje mi taki błąd w edit.php
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in c:usrkrasnalwww1edit.php on line 8
update.php - plik który po wypełnieniu formularza w edit.php updatuje newsa
[php:1:eaab6801ce]<?php
mysql_connect ("localhost", "root", "krasnal") or
die ("Nie można połączyć się z MySQL");
mysql_select_db ("news") or
die ("Nie można połączyć się z bazą danych.;");
if ($pyt == 'popraw') {
$pyt = "UPDATE news SET idnews='$idnews', naglowek='$naglowek', image='$image', tresc='$tresc', user='$user', mail='$mail', data='$data' WHERE idnews='$idnews';";
$wynik = mysql_query ($pyt);
}
?>[/php:1:eaab6801ce]
pokaz.php - plik pokazujący wybranego newsa
[php:1:eaab6801ce]<?php
mysql_connect ("localhost", "root", "krasnal") or
die ("Nie można połączyć się z MySQL.");
mysql_select_db ("news") or
die ("Nie można połączyć się z bazą danych.");
if($pyt == 'pokaz') {
$pyt = ("SELECT * FROM news WHERE id=' . $_GET['idnews'] . '")";
$result = mysql_query($pyt);
$row = mysql_fetch_array($result);
echo "<table width="400" cellspacing="0" cellpadding="0" border="0" style="BORDER-RIGHT: #000000 1px solid; BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid;">";
echo "<tr>";
echo "<td>";
echo "<div id=t2>nr." . $row['idnews'] . "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" . $row['naglowek'] . "</div>";
echo "<a href=" . $row['image'] . " target="blank_"><img src=" . $row['image'] . " width="250" height="180"></a>&nbsp;&nbsp;" . $row['tresc'] ."";
echo "<br><div id=t1><p class=data>Data dodania:" . $row['data'] ."&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Autor:&nbsp;&nbsp;<a href=mailto:" . $row['user'] . " title="Autor newsa: $row['user']">" . $row['user'] . "</a></div>";
echo "</td>";
echo "</tr>";
echo "</table>";
}
?>[/php:1:eaab6801ce]
i tu też jest błąd
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in c:usrkrasnalwww1pokaz.php on line 7
=================================
I teraz jest jeszcze jedna sprawa istotna prosze was żeby odpowiedzie niebyły takie tu masz przerobiony skrypt jest dobrze tylko żebyście dawali wskazuwki, i jeszcze chciałbym zrobić jak zrobić system uwierzytelniania żeby nikt niemiał dostępu do plików np.dodaj.php tylko po zalogowaniu można było tam wejsc prosze o funkcje a nie skrypt będe próbował sam jeśli mi niewyjdzie to poprosze wtedy o pomocną dłoń.
I jeszcze dam zapytanie żeby można było przetestować skrypt:
[sql:1:eaab6801ce]
==============================
Tworzymy tabele news z polami:
==============================
CREATE TABLE `news` (
`idnews` INT( 11 ) NOT NULL ,
`naglowek` TEXT NOT NULL ,
`image` TEXT NOT NULL ,
`tresc` TEXT NOT NULL ,
`user` TEXT NOT NULL ,
`mail` TEXT NOT NULL ,
`data` DATETIME DEFAULT 'now();

' NOT NULL
);

===============================
Mastępnie aktualizujemy idnews:
===============================
ALTER TABLE `news` DROP
PRIMARY KEY ,
ADD
PRIMARY KEY ( `idnews` )
==============================
I na koniec:
==============================
ALTER TABLE `news` CHANGE `idnews` `idnews` INT( 11 ) DEFAULT '0' NOT NULL AUTO_INCREMENT
==============================
[/sql:1:eaab6801ce]


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
Ive
post 19.12.2003, 22:34:25
Post #2





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

Ostrzeżenie: (0%)
-----


edit.php
[php:1:dfc29f5260]<?php
$pyt = ("SELECT * FROM news WHERE id='.$_GET['idnews'].')";
?>[/php:1:dfc29f5260]
tu masz błąd czyli musisz po prostu prznieść " przed nawias ;]

(ten drugi plik z błędem tongue.gif )
[php:1:dfc29f5260]<?php
$pyt = ("SELECT * FROM news WHERE id=' . $_GET['idnews'] . '")";

?>[/php:1:dfc29f5260]
znowu za nawiasem postawiłęś cudzysłów

A co do tego uwierzytelniania to zrób tak
1. zastosuj cookie lub sesje trzymając w nich login i hasło
2. na początku każdej pod strony wgrywaj plik z hasłami (lub tabele) i stosuj funkcję if(). Jeśli ni znajdzie wcześniej podanego hasła lub login walnij die() i moim zdaniem po sprawie ;]

[EDIT] (którys z kolei jush biggrin.gif )
możesz zastosować die() po tym if() wysyłając treść komunikatu lub po prostu otworzyć { i wstawić tam przekierowanie do pliku z formem ;]
[/EDIT]
Go to the top of the page
+Quote Post
kubatron
post 19.12.2003, 23:05:57
Post #3





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


o system uwierzytelniania chodzi mi na mysql i żeby zabezpieczyc pliki np.dodaj.php żeby przed zalogowaniem niemożna było tam wejsc biggrin.gifi żeby hasło było w bazie zakodowane jakąs funkcją


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
mhs
post 19.12.2003, 23:20:53
Post #4





Grupa: Zarejestrowani
Postów: 764
Pomógł: 3
Dołączył: 30.04.2003

Ostrzeżenie: (0%)
-----


jezeli chodzi o system uwierzytelniania to zacznij od projektu bazy danych czyli nastepujace pola: nazwa uzytkownika, haslo typu char(32), moze jakis email
nastepnie zapoznaj sie z funkcjami do obslugi sesji, przy okazji mozesz tez zapoznac sie z technologia ciasteczek... to tyle wskazowek na dzien dobry...

ps. jezeli chodzi o (kodowanie) haszowanie hasla to wykorzystaj tutaj funkcje [manual:331bdf8fba]md5()[/manual:331bdf8fba]
Go to the top of the page
+Quote Post
kubatron
post 19.12.2003, 23:34:21
Post #5





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


Ive dalej wyskakuje w edit.php

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in c:usrkrasnalwww1edit.php on line 8

a w pokaz.php

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in c:usrkrasnalwww1pokaz.php on line 7


mhs: thx popatrze i tez tą funkcje md5() obczaje jutro zaprojektuje baze i sprobuje cos zrobić


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
mhs
post 20.12.2003, 10:30:17
Post #6





Grupa: Zarejestrowani
Postów: 764
Pomógł: 3
Dołączył: 30.04.2003

Ostrzeżenie: (0%)
-----


mieszasz caly czas z cydzyslowami - jest ich wiele i przez to sie gubisz....

poprawilem to patrzac tylko i wylacznie na to jak koloruje skladnie moj edytor - co do logiki aplikacji to nie wiem gdyz sie nie zaglebialem w to

mam nadzieje, ze pomoze


[php:1:0c5cc6f364]<?php
mysql_connect ("localhost", "root", "krasnal") or
die ("Nie można połączyć się z MySQL");
mysql_select_db ("news") or
die ("Nie można połączyć się z bazą danych.;");
if ($pyt == 'dodaj') {
$pyt = "SELECT * FROM news WHERE id='".$_GET['idnews']."'";
$result = mysql_query($pyt);
$row = mysql_fetch_array($result);
}
echo "<table width="600" cellspacing="0" cellpadding="0" border="1">";
echo "<tr>";
echo "<td>";
echo "<div id=t2>Edycja newsów:</div>";
echo "<form action="update.php" enctype="multipart/form-data"
method="post">";
echo "<input type="hidden" name="pyt" value="popraw"><br>";
echo "Idnews:<font color=red>Wypis samoczynny.</font><br>";
echo "Nagłówek:<input type="text" name="" . $row['naglowek'] . ""><br>";
echo "Zdjecie:<input type="text" name="" . $row['image'] . "" size="40"><br>";
echo "Treść:<textarea name="" . $row['tresc'] . "" cols="45"
rows="15"></textarea><br>";
echo "User:<input type="text" name="" . $row['user'] . ""><br>";
echo "Email:<input type="text" name="" . $row['mail'] . ""><br>";
echo "Data: <font color=red>Wypis samoczynny.</font><br>";
echo "<input type="submit" value="Dodaj newsa">";
echo "<input type="reset" value="Wyczyść">";
echo "</form>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</tbody>";
?>[/php:1:0c5cc6f364]


[php:1:0c5cc6f364]<?php
mysql_connect ("localhost", "root", "krasnal") or die ("Nie można połączyć się z MySQL.");

mysql_select_db ("news") or die ("Nie można połączyć się z bazą danych.");

if($pyt == 'pokaz') {
$pyt = "SELECT * FROM news WHERE id='".$_GET['idnews']."'";
$result = mysql_query($pyt);
$row = mysql_fetch_array($result);
echo "<table width="400" cellspacing="0" cellpadding="0" border="0"
style="BORDER-RIGHT: #000000 1px solid; BORDER-LEFT: #000000 1px solid;
BORDER-BOTTOM: #000000 1px solid;">";
echo "<tr>";
echo "<td>";
echo "<div id=t2>nr." . $row['idnews'] .
"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[space]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".
$row['naglowek'] . "</div>";
echo "<a href="". $row['image'] ."" target="blank_"><img src="" . $row['image']
. "" width="250" height="180"></a>[space][space]" . $row['tresc'] ."";
echo "<br><div id=t1><p class=data>Data dodania:" . $row['data']
."&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Autor:[space
]&nbsp;<a href=mailto:" . $row['user']." title="Autor newsa:". $row['user']."">" .
$row['user'] . "</a></div>";
echo "</td>";
echo "</tr>";
echo "</table>";
}
?>[/php:1:0c5cc6f364]
Go to the top of the page
+Quote Post
DeyV
post 20.12.2003, 11:50:06
Post #7





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




a żeby kod jeszcze bardziej uczytelnić, proponuję i przypominam o tym, że jeśli już musi być kod html w kodzie php to warto go wywalać poza znaczniki php. Tak więc zamiast [php:1:aee52037ee]<?php
echo '<html .. ... >'. $row['cos']. '<html ... >';
?>[/php:1:aee52037ee]
znacznie lepiej wygąda [php:1:aee52037ee]
<?php echo $row['cos_tam'] ?>
<html . . . . >
<?php echo ... ?>[/php:1:aee52037ee]


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
kubatron
post 20.12.2003, 12:15:34
Post #8





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


Cytat
a żeby kod jeszcze bardziej uczytelnić, proponuję i przypominam o tym, że jeśli już musi być kod html w kodzie php to warto go wywalać poza znaczniki php. Tak więc zamiast [php:1:d37e28e4e6]<?php
echo '<html .. ... >'. $row['cos']. '<html ... >';
?>[/php:1:d37e28e4e6]
znacznie lepiej wygąda [php:1:d37e28e4e6]
<?php echo $row['cos_tam'] ?>
<html . . . . >
<?php echo ... ?>[/php:1:d37e28e4e6]

DeyV: ale czy to jest znowu tak ważne które lepsze jest?


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
kubatron
post 20.12.2003, 12:39:58
Post #9





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


mhs: pomogłeś tylko że niewiem czemu jak wciskam w opcje.php w pokaz.php np na news 11 to mam pustą strone a jak daje edytuj to pokazuje pusty formularz sad.gif


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
kubatron
post 20.12.2003, 12:41:20
Post #10





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


DeyV a co to daje za różnice poza znaczniki czy w znacznikach to chyba niema żadnego sensu w przyspieszeniu skryptu.


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
mhs
post 20.12.2003, 12:46:01
Post #11





Grupa: Zarejestrowani
Postów: 764
Pomógł: 3
Dołączył: 30.04.2003

Ostrzeżenie: (0%)
-----


Cytat
DeyV: ale czy to jest znowu tak ważne które lepsze jest?


a czy uwazasz, ze Twoj kod jest czytelny? - sorry, ale nie wydaje mi sie... gdybys zastosowal sie do tego co proponuje DeyV to nie mialbys takich klopotow

jezeli chcesz juz pisac w stylu ktory prezentujesz to ogranicz ilosc uzycia funkcji echo gdyz skrypt bedzie dzialal szybciej czyli lepiej jest juz napisac:


[php:1:6f9646b0e4]<?php
echo "<table width="600" cellspacing="0" cellpadding="0" border="1">".
"<tr>".
"<td>".
"<div id=t2>Edycja newsów:</div>".
"<form action="update.php" enctype="multipart/form-data" method="post">";
?>[/php:1:6f9646b0e4]

zamiast

[php:1:6f9646b0e4]<?php
echo "<table width="600" cellspacing="0" cellpadding="0" border="1">";
echo "<tr>";
echo "<td>";
echo "<div id=t2>Edycja newsów:</div>";
echo "<form action="update.php" enctype="multipart/form-data"
method="post">";
?>[/php:1:6f9646b0e4]
Go to the top of the page
+Quote Post
kubatron
post 21.12.2003, 15:25:25
Post #12





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


witam jest jeszcze jeden problem gdy w opcje.php wcisne na np. pokaż news id12 to w pliku pokaz.php powinien wybrac z bazy news o tym id i wyswietlic go a tym czasem wyswietla takie cos
Kod
<table width="400" cellspacing="0" cellpadding="0" border="0"

     style="BORDER-RIGHT: #000000 1px solid; BORDER-LEFT: #000000 1px solid;

     BORDER-BOTTOM: #000000 1px solid;"><tr><td><div id=t2>nr.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[

      space]

     &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div><a href="" target="blank_"><img src="" width="250" height="180"></a>&nbsp;&nbsp;<br><div id=t1><p class=data>Data dodania:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Autor:[space

     ]&nbsp;<a href=mailto: title="Autor newsa:"></a></div></td></tr></table>

a kod w pokaz.php mam taki
[php:1:b422918f93]<?php
mysql_connect ("localhost", "root", "krasnal") or die ("Nie można połączyć się z
MySQL.");
mysql_select_db ("news") or die ("Nie można połączyć się z bazą danych.");
if($pyt == 'pokaz') {
$pyt = "SELECT * FROM news WHERE id='" . $_GET['idnews'] . "'";
$result = mysql_query($pyt);
$row = mysql_fetch_array($result);
} else {
echo "<table width="400" cellspacing="0" cellpadding="0" border="0"
style="BORDER-RIGHT: #000000 1px solid; BORDER-LEFT: #000000 1px solid;
BORDER-BOTTOM: #000000 1px solid;">";
echo "<tr>";
echo "<td>";
echo "<div id=t2>nr." . $row['idnews'] .
"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[
space]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".
$row['naglowek'] . "</div>";
echo "<a href="". $row['image'] ."" target="blank_"><img src="" . $row['image']
. "" width="250" height="180"></a>&nbsp;&nbsp;" . $row['tresc'] ."";
echo "<br><div id=t1><p class=data>Data dodania:" . $row['data']
."&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Autor:[space
]&nbsp;<a href=mailto:" . $row['user']." title="Autor newsa:".
$row['user']."">" .
$row['user'] . "</a></div>";
echo "</td>";
echo "</tr>";
echo "</table>";
}
?>[/php:1:b422918f93]
i jak wciskam na edit.php czyli wybieram np.news 10 i chce go wyedytować to pokazuje się pusty formularz
Kod
table width="600" cellspacing="0" cellpadding="0" border="1"><tr><td><div id=t2>Edycja newsów:</div><form action="update.php" enctype="multipart/form-data"

     method="post"><input type="hidden" name="pyt" value="popraw"><br>Idnews:<font color=red>Wypis samoczynny.</font><br>Nagłówek:<input type="text" name=""><br>Zdjecie:<input type="text" name="" size="40"><br>Treść:<textarea name="" cols="45"

     rows="15"></textarea><br>User:<input type="text" name=""><br>Email:<input type="text" name=""><br>Data: <font color=red>Wypis samoczynny.</font><br><input type="submit" value="Dodaj newsa"><input type="reset" value="Wyczyść"></form></td></tr></table></tbody>

a kod mam taki
[php:1:b422918f93]<?php
mysql_connect ("localhost", "root", "krasnal") or
die ("Nie można połączyć się z MySQL");
mysql_select_db ("news") or
die ("Nie można połączyć się z bazą danych.;");
if ($pyt == 'dodaj') {
$pyt = "SELECT * FROM news WHERE id='" . $_GET['idnews'] . "'";
$result = mysql_query($pyt);
$row = mysql_fetch_array($result);
}
echo "<table width="600" cellspacing="0" cellpadding="0" border="1">";
echo "<tr>";
echo "<td>";
echo "<div id=t2>Edycja newsów:</div>";
echo "<form action="update.php" enctype="multipart/form-data"
method="post">";
echo "<input type="hidden" name="pyt" value="popraw"><br>";
echo "Idnews:<font color=red>Wypis samoczynny.</font><br>";
echo "Nagłówek:<input type="text" name="" . $row['naglowek'] . ""><br>";
echo "Zdjecie:<input type="text" name="" . $row['image'] . "" size="40"><br>";
echo "Treść:<textarea name="" . $row['tresc'] . "" cols="45"
rows="15"></textarea><br>";
echo "User:<input type="text" name="" . $row['user'] . ""><br>";
echo "Email:<input type="text" name="" . $row['mail'] . ""><br>";
echo "Data: <font color=red>Wypis samoczynny.</font><br>";
echo "<input type="submit" value="Dodaj newsa">";
echo "<input type="reset" value="Wyczyść">";
echo "</form>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</tbody>";
?>[/php:1:b422918f93]


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
kubatron
post 21.12.2003, 15:32:47
Post #13





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


i jeszcze jedno jak zrobić w index.php żeby po dodaniu 4 newsów tworzyły się strony z starymi newsami prosze o wskazuwki. biggrin.gif


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
mhs
post 21.12.2003, 15:39:23
Post #14





Grupa: Zarejestrowani
Postów: 764
Pomógł: 3
Dołączył: 30.04.2003

Ostrzeżenie: (0%)
-----


nie do konca analizowalem ten Twoj kod ale:

1)

[php:1:4629e72e4f]<?php
if($pyt == 'pokaz')
{
$pyt = "SELECT * FROM news WHERE id='" . $_GET['idnews'] . "'";
$result = mysql_query($pyt);
$row = mysql_fetch_array($result);
}
else {
//dalszy kod
?>[/php:1:4629e72e4f]

rozumiem to w ten sposob: jezeli $pyt == 'pokaz' to do tej zmiennej wpisz zapytanie, ktore bedzie wyslane do serwera, nastepnie wkorzystuje funkcje mysql_query() a nastepnie mysql_fetch_array() - i to jest koniec Tojego programu
jezeli $pyt != 'pokaz' to wyswietla Ci dane (tak mi sie wydaje) ktore chcesz pobrac z bazy danych....

masz tutaj blad logiczny - musisz pobrany wynik z BD wyswietlic czyli kontynuowac ten kod... -> mam nadzieje, ze w miare jasno i trafnie udzielicem Ci odpowiedzi

2)

rozumiem, ze skryptem edit bedziesz edytowal wiadomosc...
jezeli chcesz wiec przekazac do formularza jakies dane to musi on wygladac mniej wiecej tak:


Kod
<input type="text" name="nazwa" value="wartosc" />


pod wartosc musisz wstawic np. wynik zapytania z bazy danych .... nie widze u Ciebie tego w kodzie...
Go to the top of the page
+Quote Post
patrycjusz
post 21.12.2003, 16:00:33
Post #15





Grupa: Zarejestrowani
Postów: 263
Pomógł: 0
Dołączył: 13.07.2003
Skąd: wawa

Ostrzeżenie: (0%)
-----


hihi
ad. 1. :arrow: Kubatron słuchaj i pytania które chcesz zadać zapisz najpierw na kartce i przeczytaj to pomaga sam stosowałem i głupich pytań często (chciałoby się powiedzieć zawsze :wink: ) nie ma
ad. 2. :arrow: wyjście z kodu php i wyświetlenie html powoduje :
# czytelność
# szybkość - parser nie parsuje wtedy kodu html a jedynie wypluwa go do klienta
ad. 3. :arrow: co do archiwum - dodaj sobie dodatkową kolumne w tabeli news (np . archiwum) i
w zapytaniu wstawiającym newsa wstawiasz '0' do tej kolumny a ciągniesz tylko te newsy gdzie archiwum jest równe 0 a przenosząc do archiwum dajesz zapytanie
[php:1:0c6dd0dc5e]<?php
$sql = "update news set archiwum = '1' where id = '".$id."'";
mysql_query($sql);
?>[/php:1:0c6dd0dc5e]
to taki najprostszy sposob :wink:
ad.4.
Uwierzetelnianie:
- stwórz sobie tabele:
users id|login|haslo| bla bla co tam chcesz

i zapytanie:
[php:1:0c6dd0dc5e]<?php
$zapytanie = mysql_query("select * from users where login = '".$login."' && haslo = '".$haslo."'");
$wynik = mysql_num_rows($zapytanie);
if(!$wynik == '1')
{
echo 'nie dla psa kielbasa';
}
else
{
$_SESSION['login'] = $login;
$_SESSION['SID'] = $_SERVER['REMOTE_ADDR'].md5($haslo);
}

//i sprawdzasz na stronie czy login przekazany w sesji jest taki w bazie i czy SID czyli haslo //plus ip zahaszowane md5 tez jest w bazie i czy ip jest ok
?>[/php:1:0c6dd0dc5e]
to takie z ręki więc nie dobre, chociarz może ci wystarczy, ale jeżeli szukasz czegoś porządego to poszukaj na forum temat poruszany w co 3 poscie.

Ogólnie najpierw pooglądaj gotowce tego co chcesz stworzyć a pózniej rób i pytaj
Pozdrawiam patS.


--------------------
www.tigroup.pl Rozwiązania informatyczne dla sektora MSP.
Projektowanie i tworzenie stron www, dedykowane rozwiązania e-biznes, outsourcing usług programis
Go to the top of the page
+Quote Post
kubatron
post 21.12.2003, 21:08:07
Post #16





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


Cytat
...
masz tutaj blad logiczny - musisz pobrany wynik z BD wyswietlic czyli kontynuowac ten kod... -> mam nadzieje, ze w miare jasno i trafnie udzielicem Ci odpowiedzi
...

niedokonca rozumiem to przecież w opcje.php mam while i mysql_fetch_array i <a href=edit.php?f=pokaz&{$row['idnews']}>pokaż</a>


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
kubatron
post 21.12.2003, 22:08:27
Post #17





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


edycja też niedziała tak jak pokazałes na formularzu sad.gif probowałem różnie lecz nic


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
kubatron
post 21.12.2003, 22:16:11
Post #18





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


patS a co do twojego postu to niby dobry jest ale da rady zabezpieczyc pliki dodaj.php zeby przed zalogowaniem nikt tam sie niedostał


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
kubatron
post 22.12.2003, 21:35:58
Post #19





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


panowie bardzo was prosze pomóżcie biggrin.gif


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
kubatron
post 23.12.2003, 15:29:10
Post #20





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


pomóżcie prosze panowie biggrin.gif
----------------------
Wesołych świąt, i dużo prezentów.


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.08.2025 - 22:44