-
Zawartość
175 -
Rejestracja
-
Ostatnio
Typ zawartości
Profile
Fora
Katalog firm
Wszystko napisane przez SaVaGe123
-
Dobrze o tym wiem ;] Miałem 2 dniową awarię internetu. Książka przyszła biorę się za tą lekturę, a jeśli ktoś ma pomysł co do tego pożal się boże skryptu to pisać !! :]
-
Chodzi ci pewnie o serwer. Poszukaj w necie jak krok po kroku zrobić domowy serwer
-
Czy ja jestem ślepy czy co ale tu jest wszystko poprawnie pozamykane. Na początku jest dany if ze sprawdzeniem if(!empty($_POST['kod'])) Daje { Potem wywołuje funkcje aby zabezpieczyć dane: $_POST['kod'] = mysql_real_escape_string($_POST['kod']); Strzelam update do bazy i potem leci tak jak radziliście elseif i z mysql_affected_rows jeśli zwróci wartość 1 leci kod i tutaj wstawiam { wykonuje zadanie } jesli nie leci kolejny elseif { wykonuje zadanie } i tak dalej na koniec daje else z waidomoścą i zamykam 1 if-a } Więc co nie jest tak redgos ? Dopiero zaczynam, ten skrypt JEST mojego autorstwa może nie przyszło mi napisanie go z taką łatwością jak tobie ale nie wyciągaj pochopnych wniosków. [EDIT] Misiek wiem po prostu wkleiłem kod jak wszystkiego próbowałem i else z wiadomością wywaliłeś poza pierwszego if-a on musi tam siedzieć. A jedynym problemem czemu ten skrypt nie działa jest do że przed elseif update do bazy .
-
kafi "else if" i "elseif" to zaznacze "chyba" to samo Jak się uczyłem gdzie nie było to tylko elseif dlatego tak pisałem
-
Dając elseif wywala mi błąd składni, już próbowałem Oto kod : <?php if(!empty($_POST['kod'])){ $_POST['kod'] = mysql_real_escape_string($_POST['kod']); $msg = ""; mysql_query("update kody_2zl set status = 1, data = now(), gracz = '.$login.' where kod = '".$_POST['kod']."' and status = 0"); elseif(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + 2 where login = '$login'"); $row->waluta += 2; $msg = "<p class='true'>Dodano 2 złote</p>"; } mysql_query("update kody_3zl set status = 1, data = now(), gracz = '.$login.' where kod = '".$_POST['kod']."' and status = 0"); elseif(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + 3 where login = '$login'"); $row->waluta += 3; $msg = "<p class='true'>Dodano 3 złote</p>"; } mysql_query("update kody_6zl set status = 1, data = now(), gracz = '.$login.' where kod = '".$_POST['kod']."' and status = 0"); elseif(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + 6 where login = '$login'"); $row->waluta += 6; $msg = "<p class='true'>Dodano 6 złotych</p>"; } mysql_query("update kody_9zl set status = 1, data = now(), gracz = '.$login.' where kod = '".$_POST['kod']."' and status = 0"); elseif(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + 9 where login = '$login'"); $row->waluta += 9; $msg = "<p class='true'>Dodano 9 złotych</p>"; } else $msg = "<p class='error'>Niepoprawny kod</p>"; echo $msg."<br><br><br>";} ?> i Wywala : Parse error: syntax error, unexpected T_ELSEIF in C:\xampp\htdocs\dot.php on line 557
-
Skrypt działa następującą: W bazie jest tabela o nazwie "kody_2zl" oto zawartość: -- -- Struktura tabeli dla `kody_2zl` -- CREATE TABLE IF NOT EXISTS `kody_2zl` ( `kod` varchar(8) NOT NULL, `status` tinyint(4) NOT NULL default '0', `data` datetime NOT NULL, `gracz` int(11) NOT NULL default '0', PRIMARY KEY (`kod`), KEY `status` (`status`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; A to skrypt dzięki któremu wpisany kod dodaje nam pieniądze. <?php if(!empty($_POST['kod'])){ $_POST['kod'] = mysql_real_escape_string($_POST['kod']); $msg = ""; mysql_query("update kody_2zl set status = 1, data = now(), gracz = ".$login." where kod = '".$_POST['kod']."' and status = 0"); if(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + 2 where login = '$login'"); $row->waluta += 2; $msg = "Dodano 2 złote"; } else $msg = "Niepoprawny kod"; echo $msg."<br><br><br>"; } ?> Posiadasz: <b><?php while ($row = mysql_fetch_object($result)) { echo $row->waluta;}?></b> złote<br><br><br> Doładuj monety<br><br> <form action='dot.php?a=vip' method='post'> Kod: <input type='text' name='kod'> <input type='submit' value='Użyj'> </form> Na samym początku dane: <?php ob_start(); ob_implicit_flush(0); session_start(); if(@$_SESSION['zalogowany']==0) { header('Location: logowanie.php '); } include('db_fns.php'); $pass=$_POST['pass']; $pass2=$_POST['pass2']; $sha1pass=sha1($pass); @$login = $_SESSION['login']; $log = mysql_query("SELECT * FROM users WHERE login = '$login'") or die (mysql_error()); $logi = mysql_fetch_assoc($log); $old=$logi['password']; $oldpas=$_POST['oldpass']; $oldpass=sha1($oldpas); $result = mysql_query("SELECT * FROM users WHERE login = '$login'"); ?> A to struktura tabeli "users": -- -- Struktura tabeli dla `users` -- CREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL auto_increment, `login` varchar(32) character set utf8 collate utf8_polish_ci NOT NULL, `password` varchar(40) character set utf8 collate utf8_polish_ci NOT NULL, `email` varchar(50) character set utf8 collate utf8_polish_ci NOT NULL, `token` text character set utf8 collate utf8_polish_ci NOT NULL, `potwierdzenie` tinyint(4) NOT NULL default '0', `waluta` int(11) NOT NULL default '0', `ftp` text character set utf8 NOT NULL, `baza` text character set utf8 collate utf8_polish_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=4 ; Skrypt wywala błąd ze niepoprawny kod. Nie mogę sobie z tym poradzić. Uprzedzam pytania ! Nie otwieram firmy hostingowej !
-
Kwota docelowa i uzbierana poprostu daj na początku kodu 2 zmienne aby był do niej łatwy dostęp potem dajesz: Ubierano:<b><?php echo $zmienna ?></b> A pasek postępu to najprostszy sposób to stwórz diva o szerokości np 400; wysokości około 10; border; 2-3px (teraz typ ramki np"inset") i w środek wstawiasz 2 diva tam dajesz np width:40%; wysokość taka jak w bloku 1 ; background:red ; display:block zamykasz oba divy i masz prosty skrypcik. [EDIT] Oraz przy okazji mam dosyć głupie pytanie. Dam w PHP skrypt zamieniający 2 wyciągi z bazy na % daje do tego zmienną i mogę to wpisać w "width:$procent %; ?
-
Nie chce wam już zajmować czasu. Zamówiłem książkę. Internetowe kursy to jednak za mało. Zamiast tych twoich dwóch "atomowych operacji" można dać do bazy "waznosc_kodu" jeśli wynik z zapytania równa się 0 operacja leci dalej, jeśli jest 1 zwraca komunikat o wykorzystaniu kodu . Przeczytam książkę jeśli nie będę dalej umiał przeczytam jeszcze raz i tak do skutku. Dzięki za pomoc
-
Próbowałem już wcześniej z "else" za pierwszą razą wywaliło błąd a potem sumowało kody czyli jeśli wpisałem kod za 6 zł to zsumowało 2+3+6 i dodało 11. Teraz spróbuje tak jak ty mówiłeś tylko dręczy mnie jedna rzecz ile kod jest warty wyciągne dam pod zmienną wstawie tą zmienną w mysql_query("update users set waluta = waluta +$wartosckodu where login = '$login'"); $row->waluta += $wartosckodu; $msg = "<p class='true'>Dodano $wartosckodu złotych</p>"; Ale jak tutaj teraz wywalić błąd że zły kod ? mogę użyć starego skryptu czy próbować pisać nowy ? Dałem też coś takiego: <?php if(!empty($_POST['kod'])){ $_POST['kod'] = mysql_real_escape_string($_POST['kod']); $msg = ""; mysql_query("update kody_2zl set status = 1, data = now(), gracz = '.$login.' where kod = '".$_POST['kod']."' and status = 0"); if(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + $row->wkod where login = '$login'"); $row->waluta += $row->wkod; $msg = "<p class='true'>Dodano $row->wkod złote</p>"; } else $msg = "<p class='error'>Niepoprawny kod</p>"; echo $msg."<br><br>";} ?> Tylko nie wiem jak tu dać teraz pętle z mysql_fetch_object
-
I kolejny problem Rozbudowałem skrypt ze po wpisaniu kodu wartego 2 zł dodaje 2 zł a jak kod warty 6 zł to dodaje 6 zł wszystko ładnie pięknie działa tylko mam problem w wywalaniem komunikatu. Jeśli wpisze kod za 2 3 lub 6 zł to wywala mi "Niepoprawny kod" lecz dodaje pieniądze a jesli za 9 zł (ostatni w skrypcie) to wtedy "Dodano 9 złotych". Jak przerobic ten kod aby posprawdzało wszystkie w bazie i jak niebędzie wywaliło jeden komunikat ? Oto kod : <?php if(!empty($_POST['kod'])){ $_POST['kod'] = mysql_real_escape_string($_POST['kod']); $msg = ""; mysql_query("update kody_2zl set status = 1, data = now(), gracz = '.$login.' where kod = '".$_POST['kod']."' and status = 0"); if(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + 2 where login = '$login'"); $row->waluta += 2; $msg = "<p class='true'>Dodano 2 złote</p>"; } mysql_query("update kody_3zl set status = 1, data = now(), gracz = '.$login.' where kod = '".$_POST['kod']."' and status = 0"); if(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + 3 where login = '$login'"); $row->waluta += 3; $msg = "<p class='true'>Dodano 3 złote</p>"; } mysql_query("update kody_6zl set status = 1, data = now(), gracz = '.$login.' where kod = '".$_POST['kod']."' and status = 0"); if(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + 6 where login = '$login'"); $row->waluta += 6; $msg = "<p class='true'>Dodano 6 złotych</p>"; } mysql_query("update kody_9zl set status = 1, data = now(), gracz = '.$login.' where kod = '".$_POST['kod']."' and status = 0"); if(mysql_affected_rows() == 1){ mysql_query("update users set waluta = waluta + 9 where login = '$login'"); $row->waluta += 9; $msg = "<p class='true'>Dodano 9 złotych</p>"; } else $msg = "<p class='error'>Niepoprawny kod</p>"; echo $msg."<br><br><br>";} ?>
-
Moim błędem było to że gracza dałem w "$login" a powinienem w '$login' żeby kodu nie dzielić. Redgos i Misiek wielkie dzięki. I mam jeszcze jedno pytanko do Miska bo ja tam niby dałem $_POST['kod'] = mysql_real_escape_string($_POST['kod']); Można w takiej formie ?
-
Jak pobrać dane w tabeli z MySQL dokładnie jest to w tabeli "users" w polu "waluta". Próbowałem SELECT * FROM Ale nie działa jak można inaczej ?
-
Poprawiłem na: $result = mysql_query("SELECT * FROM users WHERE login = '$login'"); Chłopaki wielkie dzięki za pomoc Temat do zamknięcia.
-
Na początku dane (w dużej mierze od rejestracji) <?php ob_start(); ob_implicit_flush(0); session_start(); if(@$_SESSION['zalogowany']==0) { header('Location: logowanie.php '); } include('db_fns.php'); $pass=$_POST['pass']; $pass2=$_POST['pass2']; $sha1pass=sha1($pass); @$login = $_SESSION['login']; $log = mysql_query("SELECT * FROM users WHERE login = '$login'") or die (mysql_error()); $logi = mysql_fetch_assoc($log); $old=$logi['password']; $oldpas=$_POST['oldpass']; $oldpass=sha1($oldpas); $result = mysql_query("SELECT * FROM users"); ?> A to do wylogowania usera i wyświetlenie posiadanych pieniędzy <?php if(@$_GET['wyloguj']=='tak') { session_unset(); session_destroy(); $uo_de_2=mysql_query("DELETE FROM users_online WHERE login = '".$_SESSION['login']."'"); echo "Zostałeś wylogowany"; echo "<br>"; echo "<a href=\"logowanie.php\">Zaloguj się</a>"; } else{ if(@$_SESSION['zalogowany']==1) { echo "Witaj, <b>".$_SESSION['login']."</b> jesteś zalogowany"; echo "<br>"; } else echo "Nie jesteś zalogowany"."<a href=\"logowanie.php\">Zaloguj się</a>"; } ?> <td> <h3><p style="color:red">Posiadasz:<?php while ($row = mysql_fetch_object($result)) { echo $row->waluta;}?> Zł</p></h3> </br> </td> Baza MySQL -- -- Baza danych: `hosting` -- -- -------------------------------------------------------- -- -- Struktura tabeli dla `users` -- CREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL auto_increment, `login` varchar(32) collate utf8_polish_ci NOT NULL, `password` varchar(40) collate utf8_polish_ci NOT NULL, `email` varchar(50) collate utf8_polish_ci NOT NULL, `token` text collate utf8_polish_ci NOT NULL, `potwierdzenie` tinyint(4) NOT NULL default '0', `waluta` int(11) NOT NULL default '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=4 ;
-
Na samym początku dałem : $result = mysql_query("SELECT * FROM users"); A do wyświetlenia: <?php while ($row = mysql_fetch_object($result)) {echo $row->waluta; }?> Wartość się wyświetla ale na sam początek wywala mi 2 zera. Jak się tego pozbyć ? <--EDIT--> Już wiem co jest problemem wyświetla mi się cała tabela a nie tylko dla jednego usera jak zdefiniować dla zalogowanego ?
-
Dałem: $walu = mysql_query("SELECT * FROM users WHERE waluta = '$waluta'") or die (mysql_error()); A do wywołania: <?php echo $waluta ?> Coś nie tak napisałem ??