Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP] Publikacja ofert na stronie poprzez akceptację
Forum PHP.pl > Forum > Przedszkole
kps
Witam,

Chciałbym zrobić coś takiego na mojej stronie:

Ktoś wypełnia krótki formularz powiedzmy 3 pola: opis, cena i e-mail i klika wyślij
Ja wchodzę tylko do panelu admina czy tam do jakiejś stronki admin.php czy coś, czytam,
klikam ok i data, opis wraz z ceną pokazuje się na stronie a e-mail który podała osoba pokazuje się
po najechaniu albo kliknięciu w opis lub cene.

Proszę mi tłumaczyć najprościej jak potraficie.
Jeśli coś źle wytłumaczyłem to piszcie.

Pozdrawiam
wNogachSpisz
najprościej to tak:

Kod
<font onclick="document.getElementById('hidden_email').style.display='block'"> kliknij aby zobaczyć email:</font>
<div id="hidden_email" style="display:none">
    admin@php.pl
</div>
kps
ok to to będzie można tam gdzieś użyć do pokazywania maila, ale powiedzcie jak zrobić to że akceptuje w panelu to co ludzie wpisują w formularzu
thek
Jemu chodzi o całość problemu a nie tylko znikanie, pojawianie e-mail.
Można to zrobić na conajmniej 2 sposoby. Ja rzucę Ci 2, jakie mam po sekundzie(!) myślenia. Mało i bardziej elegancki.
Mało elegancki: 2 tabele z tymi samymi kolumnami. Nadesłane lądują w jednej. To z niej odczytujesz nadeslane i akceptujesz lub uuwasz. Zaakceptowane "przepisujesz" (insert) do tej drugiej, która jest główną wyświetlaną.
Bardziej elegancki: masz jedną tabelę z dodatkową kolumną. Jej oznaczenie 0 oznacza wpis nie zatwierdzony, 1 to zatwierdzony.

Zalety i wady mają oba. Od Ciebie zależy co wybierzesz. Kwestia elegancji zresztą nie jest tu wymogiem. Prawda jest też taka, że dzięki systematycznemu usuwaniu zbędnych rekordów zalegających w tymczasowej całość może być szybsza na 2 tabelach niż na jednej z flagą.

Jak z wyświetlaniem wpisu to masz jedną z możliwości u kolegi przede mną.
Spawnm
dajesz w bazie pole akcept default 0, w panelu przy kliknięciu akceptuj zmieniasz w bazie akcept na 1 .
na stronie wyświetlasz tylko te z akcept 1 smile.gif
kps
Podajcie mi jakiś prosty kod jak to mniej więcej zrobić bo nie bardzo znam się na php dopiero się uczę
jak zrobić żeby to się przesyłało do admin.php itp. jakich funkcji używać itp
thek
Człowieku... Przecież nie damy Ci gotowca ze strukturą tabeli i napisanego skryptu administratorskiego do tego smile.gif Mamy Ci pomagać, podsuwać rozwiązania. Jeśli tak prostej rzeczy sam nie napiszesz to co dopiero będziesz miał z trudniejszymi za problemy? blinksmiley.gif
Zauważ, że Ty nas pytasz o tak ścisłe podstawy jak pobieranie z bazy i zapis do niej, czy zmiana jednej z wartości. To jest elementarna wiedza, z która już powinieneś tu się pojawić.
wNogachSpisz
Jeśli jesteś początkujący, to póki co daruj sobie SQL'a, albo poświęć kolejne miesiące  wyłącznie na jego naukę, chociażby ze względów bezpieczeństwa.

Na początek polecam starą dobrą zabawę z plikami.

Projekt opisanej przez ciebie aplikacji można podzielić na trzy kluczowe zadania:

1. Strona klienta, wyświetlenie formularza pozwalającego złożyć oferte.
2. Strona serwera, odebranie informacji wysłanych przy pomocy formularza opisanego w punkcie 1, walidacja i zapis w bazie, tutaj powinny znajdować się filtry uniemożliwiające dokonywania wszelkich nadużyć, jak np. wysłanie dużej ilości ofert mogące skutować wyczerpaniem zasobów serwera (pamięć masowa), czy przesyłanie przez agresora (już nie klienta smile.gif) kodu JavaScript (XSS).
3. Panel administratora, odczytanie informacji zapisanych w punkcie 2,
  akceptacja ->  rozpoczęcie prezentacji ogłoszenia na stronie, wysłanie wiadmości email do autora o porpawnym umieszczeniu jego ogłoszenia na stronie
  odrzucenie -> skasowanie ogłoszenia z bazy, wysłanie wiadmości o niepowodzeniu do autora oferty, w razie wykrycia prób ataku, złożenie wniosku do prokuratoru o popełnieniu przestępstwa.


A oto długo wyczekiwany kod źródłowy tej aplikacji,

1.
Kod
<form action="dodaj_ogloszenie.php" method="POST">
    <input type="text" name="tytul"> Tytuł<br />
    <input type="text" name="email"> E-mail<br />
    <input type="text" name="cena"> Cena<br />
    <textarea name="tresc"></textarea> Treść
</form>



2.
Kod
<?php

$dbfilepath = 'db.txt';

$data = file_get_contents(unserialize($dbfilepath));
$data[] = $_POST;
file_put_contents(serialize($data));

?>


3.
Kod
<?php
$dbfilepath = 'db.txt';
$items = file_get_contents(unserialize($dbfilepath));
?>

<table>
<? foreach ( $items as $item ): ?>
<tr>
    <td>
        <?=$item['tytul']?>
    </td>
    <td>
        <?=$item['email']?>
    </td>
    <td>
        <?=$item['cena']?>
    </td>
    <td>
        <?=$item['tresc']?>
    </td>
</tr>
<? endforeach; ?>
</table>



kps
thek ma rację musze sie tego nauczyć,
zna ktoś jakiś fajny kurs internetowy w którym bym mógł to ogarnąć ?
Spawnm
Masz przyklejony temat z kursami...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.