Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pomysl na skrypt eKlubu Kibica
Forum PHP.pl > Forum > Gotowe rozwiązania
kpjeziorak
Witam po raz kolejny. biggrin.gif
Czy umialby ktos napisac prosty skrypt klubu kibica, mialby on wygladac nastepujaco: Odwiedzajacy wchodzacy na strone wypelnia formularz gdzie podaje dane: Imie i Nazwisko lub pseudonim, adres e-mail, nr GG, miejsce zamieszkania. Dane bylyby zapisywane w pliku .txt, albo MySQL, to nie gra roli, zalezy od tworczosci uzytkownikow tego forum biggrin.gif .
Dane te wyswietlane byly by na kolejnej stronie, np. w tabelce
|Imie i nazwisko lub pseud|e-mail|nr GG.|msc. zamieszkania|, tylko jest jedna bardzo wazna sprawa, chcialbym aby wyniki byly sortowane wedlug kolumny Imie i nzawisko lub pseudonim.
Tak wiec bede czekal na wasza pomoc, a moze znowu ktos z was mi pomoze? biggrin.gif Z gory dzieki...
Chinczyk
Napisałem Ci, korzysta z bazy MySQL:

connection.php

[php:1:7e1c243ff4]<?php
function connection() {

global $conn;
if($conn) {
return $conn;
} else {
$conn = mysql_connect("HOST_BAZY", "LOGIN_BAZY", "HASLO_BAZY");
if (!$conn || !mysql_select_db("NAZWA_BAZY", $conn)) {
return 0;
} else {
return $conn;
}
}
}

function sql($query) {
if(!($conn = connection())) {
return 0;
} else {
$result = mysql_query($query, $conn);
if(!$result) {
print('<div style="font: 10pt Verdana; color: white;">Wystąpił błąd<br></div>');
} else {
return $result;
}
}
}
?>[/php:1:7e1c243ff4]

formularz.html

Kod
<html>

<title>jakas tam nazwa</title>

<form action="zapisz.php" method="post">

Imie Nazwisko (lub nick)<input size="20" type="text" name="imienazwisko"><br>

E-Mail: <input size="20" type="text" name="email"><br>

GG: <input size="20" type="text" name="gg"><br>

Miasto: <input size="20" type="text" name="miejscezamieszkania"><br>

<input type="submit" value="Wyslij"><input type="reset" value="Reset"></form>

</html>


zapisz.php

[php:1:7e1c243ff4]<?php
include('connection.php');

if (isset($imienazwisko))
{
$query = sql("INSERT INTO skrypt SET imienazwisko='$imienazwisko', email='$email', gg='$gg', miejscezamieszkania='$miejscezamieszkania';");
}
echo "Dane zapisane";
?>[/php:1:7e1c243ff4]

wyswietl.php

[php:1:7e1c243ff4]
<?php

include('connection.php');

{
$zapytanie = sql("SELECT * FROM skrypt ORDER BY imienazwisko ASC;");
while ($rekord = mysql_fetch_array($zapytanie))

{
print 'Imie Nazwisko (lub nick): '.$rekord['imienazwisko'].'<br>';
print 'E-Mail: '.$rekord['email'].'<br>';
print 'GG: '.$rekord['gg'].'<br>';
print 'Miasto: '.$rekord['miejscezamieszkania'].'<br><br>';
}
}

?>
[/php:1:7e1c243ff4]

W pliku connection ustaw host, login, hasło, oraz nazwę bazy. Kod SQL do utworzenia tabeli:

[sql:1:7e1c243ff4]CREATE TABLE `skrypt` (
`id` int(11) NOT NULL auto_increment,
`imienazwisko` varchar(255) NOT NULL default '',
`email` varchar(255) NOT NULL default '',
`gg` varchar(255) NOT NULL default '',
`miejscezamieszkania` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;[/sql:1:7e1c243ff4]

Od razu jest pole 'id', które automatycznie co każdy dodany nowy wpis, zwiększa się o jeden. Ułatwi to pracę, gdyby była potrzeba rozbudowania skryptu do możliwośći edycji/usuwania wpisów.

To tyle... skrypt działa, testowałem u siebie.
kpjeziorak
Bardzo dziekuje, wszystko swietnie dziala, tylko mam ostatnia prosbe: Chcialbym, zeby plik wyswietl.php pokazywal mi wpisy w nastepujacy sposob:
[php:1:a7dcc77d1c]<?php
<TABLE>
<TR>
<TD>Imie i nazwisko</TD>
<TD>E-mail</TD>
<TD>GG</TD>
<TD>Miasto</TD>
</TR>
<TR>
<TD>wartosc_dla_imienazwisko</TD>
<TD>wartosc_dla_emial</TD>
<TD>wartosc_dla_gg</TD>
<TD>wartosc_dla_miejscezamieszkania</TD>
<TR>
</TABLE>
?>[/php:1:a7dcc77d1c]
Czyli chce aby dane wyswietlone byly w tabeli, a kazdy wpis w odzielnym wierszu tej tabeli, czy jest to mozliwe? Aha, i czy jest mozliwe, aby wyswietlone dane byly sortowane alfabetycznie odnoszac sie do pierwszej kolumny, czyli "Imię i nazwisko"?
kpjeziorak
Jezu, nie przetestowalem dobrze a pisze glupoty biggrin.gif Wszystko je ok, sortuje tak jak chcialem, tylko troche plik wyswietl.php przerobilem, dla wlasnych potrzeb:

[php:1:dd524ab463]<?php
<TABLE border="0" cellspacing="0" cellpadding="5" width="560">
<TR>
<TD>
<TABLE border="1" cellspacing="0" cellpadding="3" bordercolor="#0070D0">
<TR>
<TD align="center"><B>Imię i nazwisko</B></TD>
<TD align="center"><B>E-mail</B></TD>
<TD align="center"><B>GG</B></TD>
<TD align="center"><B>Miasto</B></TD>
</TR>
<?php

include('connection.php');

{
$zapytanie = sql("SELECT * FROM skrypt ORDER BY imienazwisko ASC;");
while ($rekord = mysql_fetch_array($zapytanie))

{
$imienazwisko = $rekord['imienazwisko'];
$email = $rekord['email'];
$gg = $rekord['gg'];
$miejscezamieszkania = $rekord['miejscezamieszkania'];

echo "<TR>";
echo "<TD>$imienazwisko</TD>";
echo "<TD><A HREF="mailto:$email">$email</A></TD>";
echo "<TD>$gg</TD>";
echo "<TD>$miejscezamieszkania</TD>";
echo "</TR>";
}
}

?>
</TABLE>
</TD>
</TR>
</TABLE>
?>[/php:1:dd524ab463]

Tak wiec jeszcze raz bardzo dziekuje, no i daje punkt za pomoc biggrin.gif
Pozdrawiam
PS: Czy moglbym otrzymac jeszcze skrypcik to usuwania wpisow? biggrin.gif
Chinczyk
Najlepiej od razu przez np. PHPMyAdmin. Ale skrypt Ci napiszę jeżeli chcesz, ale jutro, bo dzisiaj dopiero wróciłem... winksmiley.jpg
kpjeziorak
Oczywiscie, ze chce, jezeli nie masz czasu to nie szkodzi, skrypt uruchomie w serwisie dopiero na poczatku przyszlego tygodnia:) I tak dzieki za pomoc.
Chinczyk
Napisałem skrypt do edycji/usuwania wpisów:

admin.php

[php:1:22d0d20330]<?php

include("connection.php");

if (!isset($action))
{

$zapytanie = sql("SELECT * FROM skrypt ORDER BY imienazwisko ASC;");
while ($rekord = mysql_fetch_array($zapytanie))

{
print 'Imie i Nazwisko (lub nick):'.$rekord['imienazwisko'].'<br>';
print 'E-Mail: <a href="'.$rekord['email'].'">'.$rekord['email'].'</a><br>';
print 'GG: '.$rekord['gg'].'<br>';
print 'Miasto: '.$rekord['miejscezamieszkania'].'<br><br>';
print '+ <a href="?action=usun&id='.$rekord['id'].'">Usun</a> + <a href="?action=edytuj&id='.$rekord['id'].'">Edytuj</a> +';
print '<hr><br>';
}
}

if ($action == "usun") {

$zapytanie = sql("DELETE FROM usun WHERE id='$id';");

print '<p>Usunieto wpis.<p>';
print '<b>|</b> <a href="admin.php">Powrot</a> <b>|</b>';
}

if ($action == "edytuj")
{

$zapytanie = sql("SELECT * FROM skrypt WHERE id='$id';");
while ($rekord = mysql_fetch_array($zapytanie))
{

print '<center>';
print '<form method="post" action="?action=edytuj_tak&id='.$rekord['id'].'">';
print '<p><b><font face="verdana" size="3" color="#000000">Edycja:</b><br>';
print '<font face="verdana" size="2" color="#000000">('.$rekord['imienazwisko'].')<p>';
print 'Imie i Nazwisko (lub nick)l: <br><input type="text" name="imienazwisko" size="30" value="'.$rekord['imienazwisko'].'"><br>';
print 'E-Mail: <br><input type="text" name="email" size="30" value="'.$rekord['email'].'"><br>';
print 'GG: <br><input type="text" name="gg" size="30" value="'.$rekord['gg'].'"><br>';
print 'Miasto: <br><input type="text" name="miejscezamieszkania" size="30" value="'.$rekord['miejscezamieszkania'].'"><br>';
print '<input type="submit" value="Uaktualnij"><p>';
print '</center>';
}

}

if ($action == "edytuj_tak")
{

if (isset($imienazwisko))
{
$query = sql("UPDATE skrypt SET imienazwisko='$imienazwisko', email='$email', gg='$gg', miejscezamieszkania='$miejscezamieszkania' WHERE id='$id';");
print "<center>Wpiszostal uaktualniony poprawnie.";
print '<p><b>|</b> <a href="admin.php">Powrot</a> <b>|</b></center>';

}
}

?>[/php:1:22d0d20330]

Może i całość nie najlepiej napisana, ale swoją funkcje spełnia. winksmiley.jpg)
Qrzysio
Jeżeli jeszcze ktoś napisze opce Edytuj to będę wniebo wzięty i bardzo bardzo wdzięczny....
kpjeziorak
Dzieki za skrypt Chinczyk, PS: Nie chcialbym byc natretny, ale nie dziala usuwanie, bynajmniej u mnie sad.gif , Edycja dziala super, jezeli bedziesz mial chwilke czasu mozesz looknac czy wszystko jest ok?
Chinczyk
Cytat
Jeżeli jeszcze ktoś napisze opce Edytuj to będę wniebo wzięty i bardzo bardzo wdzięczny....


Przecież jest. winksmiley.jpg

kpjeziorak: Przepraszam, niedopatrzenie z mojej strony. Zamień kod:

[php:1:d1698cfe36]<?php
if ($action == "usun") {

$zapytanie = sql("DELETE FROM usun WHERE id='$id';");

print '<p>Usunieto wpis.<p>';
print '<b>|</b> <a href="admin.php">Powrot</a> <b>|</b>';
}
?>[/php:1:d1698cfe36]

Na:

[php:1:d1698cfe36]<?php
if ($action == "usun") {

$zapytanie = sql("DELETE FROM skrypt WHERE id='$id';");

print '<p>Usunieto wpis.<p>';
print '<b>|</b> <a href="admin.php">Powrot</a> <b>|</b>';
}
?>[/php:1:d1698cfe36]
kpjeziorak
Ok, wszystko teraz jest ok, wielkie dzieki!
-=Peter=-
Mam pytanie, zrobilem wszystko jak mowi Chinczyk, wszystko teoretycznie jest ok, nie wyskakuje zaden blad itp. ale jak sie dopisuje to pozniej otwieram plik wyswietl.php i jest on pusty, tak na wszelki wypadek: na bazie danych jest odpowiednia tabela "skrypt", w pliku connetion.php (czy jakos tak tongue.gif ) mam ustawione dobre parametry bazy mysql, ale mimo to skrypt niedziala, czyli nie chca zapisywac sie wpisy. Jak znacie odpowiedz na ten problem to pomozcie. Ten skrypt chce wykorzystac jako spis graczy w jakis tam grze (niewazne jakiej tongue.gif )

Abym nie byl goloslowny to link do skryptu:
http://www.dhost.info/tekken5/spis2/formularz.htm
http://www.dhost.info/tekken5/spis2/wyswietl.php

EDIT: Juz mniej wiecej wiem dlaczego ten script mi nie dziala: probowalem na serwie dhost.info i na nim nie dziala ten script (nie wiem dlaczego), ale na http://members.lycos.co.uk juz dziala, ciekawe dlaczego.
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-2024 Invision Power Services, Inc.