Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Problem z uaktualnieniem IP w bazie danych
dunce
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 24.02.2014

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


Witam mam problem z uaktualnieniem adresów ip w bazie danych .Chiałbym aby adresy ip uzytkowników którzy nie mają jeszcze wpisu w bazie uaktualniły się z pierwszym logowaniem , próbowałem już update i nic z tego. Baza 'users' tabela 'ip' Proszę o pomoc.
  1. <?php include "../base.php";
  2.  
  3. if (!empty($_SERVER['HTTP_CLIENT_IP'])){
  4. $ip=$_SERVER['HTTP_CLIENT_IP'];
  5. }elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
  6. $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
  7. }else{
  8. $ip=$_SERVER['REMOTE_ADDR'];
  9. }
  10.  
  11. if(!empty($_POST['username']) && !empty($_POST['password']))
  12. { $IP = $_SERVER['REMOTE_ADDR'];
  13. $username = mysql_real_escape_string($_POST['username']);
  14. $password = md5(mysql_real_escape_string($_POST['password']));
  15.  
  16. $checklogin = mysql_query("SELECT * FROM users WHERE EmailAddress = '".$username."' AND Password = '".$password."'");
  17.  
  18. if(mysql_num_rows($checklogin) == 1)
  19. {
  20.  
  21. $sql = "UPDATE users(ip) VALUES('$ip')";
  22. $row = mysql_fetch_array($checklogin);
  23. if ($row['Status'] != 'Blocked'){
  24.  
  25. $_SESSION['Username'] = $row['Username'];
  26. $_SESSION['UserID'] = $row['UserID'];
  27. $_SESSION['Status'] = $row['Status'];
  28. $_SESSION['LoggedIn'] = 1;
  29.  
  30. echo "ok";
  31. }
  32. else {
  33. echo 'Twoje konto zostało zablokowane!';
  34. }
  35. }
  36. else
  37. {
  38. echo "Podaj poprawny Adres e-mail i hasło";
  39. }
  40. }
  41. else {
  42. echo "Wypełnij wszystkie pola.";
  43. }
  44.  
  45. ?>


Ten post edytował Kshyhoo 1.03.2014, 08:29:35
Powód edycji: [Kshyhoo]: bb-code
Go to the top of the page
+Quote Post
Daimos
post
Post #2





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


  1. UPDATE users SET ip = '$ip'

a poza tym, nie wywołujesz nigdzie zapytania, podstawiasz tylko do zmiennej, daj mysql_query na $sql

Ten post edytował Daimos 28.02.2014, 17:03:21
Go to the top of the page
+Quote Post
dunce
post
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 24.02.2014

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


  1. $sql = "UPDATE users SET ip = '$ip'"
  2. mysql_query($sql);

Nic nie daje
  1. $row = mysql_fetch_array($checklogin);
  2. if ($row['Status'] != 'Blocked'){
  3.  
  4. $_SESSION['Username'] = $row['Username'];
  5. $_SESSION['UserID'] = $row['UserID'];
  6. $_SESSION['Status'] = $row['Status'];
  7. $_SESSION['LoggedIn'] = 1;
  8. $ip = $_SERVER['REMOTE_ADDR'];
  9. $sql = "UPDATE users SET ip = '$ip'";
  10. mysql_query($sql);
  11. echo "ok";
  12. }

zapisuje wszystkim userom moje ip

Ten post edytował Kshyhoo 1.03.2014, 08:30:36
Powód edycji: [Kshyhoo]: bb-code
Go to the top of the page
+Quote Post
matiit
post
Post #4





Grupa: Zarejestrowani
Postów: 365
Pomógł: 70
Dołączył: 5.04.2009

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


Bo nie wiesz jak używać UPDATE.
http://www.sqlcourse.com/index.html

Przyda Ci się
Go to the top of the page
+Quote Post
dunce
post
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 24.02.2014

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


Mam dosyć odsyłaczy do innych stron lub google - ludzie pamiętajcie że nikt nie lubi forów gdzie zamiast pomagać odsyla sie gdzie indziej .
Jaki jest sens istnienia forum lub nawet działu w którym się nie pomaga .
Mam pomysł - wklejcie kod wyszukiwarki żeby zamiast odpowiedzi na zadane pytanie pokazywało się np. google i sprawa będzie załatwiona.
Go to the top of the page
+Quote Post
zebrowski1073
post
Post #6





Grupa: Zarejestrowani
Postów: 33
Pomógł: 1
Dołączył: 17.07.2013

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


Proszę cię abyś napisał czy tym zapytaniem update chcesz zmienić id jednemu użytkownikowi czy wszystkim, bo jak jeden mądry informatyk powiedział mi że się nie da wszystkich rekordów zmienić jednym poleceniem przykła update

$zapytanie = 'update tabela id=$id where twój_klucz=$twoj_klucz ;
to naprzykła

$zapytanie = 'SELECT * from tabela ORDER BY twój klucz ASC' ;
potem

$p = mysql_query($zapytanie) ;

foreach($p as $kom)
{
$zapytanie = 'update tabela id=$id where twój_klucz=$p['twoj_klucz];
mysql_query($zapytanie) ;
}

gdzie $ip twoje ip ;


Może coś zapomniałęm dodać
Go to the top of the page
+Quote Post
dunce
post
Post #7





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 24.02.2014

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


Skrypt nie miał zapisu ip podczas rejestracji a w momencie jak go dodałem miałem już na stronce ok 100.000 userów .
Chcę aby teraz podczas logowania uaktualnił sie adres danego użytkownika w bazie danych. czyli - loguję się jako np. admin i w tabeli users i kolumnie ip gdzie wczesniej było 0 zapisze sie ip w postaci np 32.534.345.235. Teraz podczas próby rejestracji drugiego konta wyskoczy monit o dublowaniu kont
Nie chcę aby rejestrowali się podwójnie
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




@zebrowski1073 pleciesz trzy po trzy, podajesz jakies totalnie bledne przyklady.... czemu to ma sluzyc?

@dunce zacznij wkoncu uzywac BBCODDE PHP dla kodu PHP!

  1. $sql = "UPDATE users SET ip = '$ip' where UserID={$row['UserID']}";
Go to the top of the page
+Quote Post
zebrowski1073
post
Post #9





Grupa: Zarejestrowani
Postów: 33
Pomógł: 1
Dołączył: 17.07.2013

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


Ja nie po Ip tylko po emailu i loginie loginie zrobił. Trzeba zadać pytanie do bazy danych czy taki użytkownik istnieje
np:

zapytanie = "SELECT * from users where email=".$email." and login=".$login ;

Jak dobrze pamiętam Pętlę z odpowiednimi informacjami takimi jak
taki email już jest zarejestrowany lub taki login jest zajęty musisz sam zrobić można zrobić przez javascrypt lub php
Go to the top of the page
+Quote Post
dunce
post
Post #10





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 24.02.2014

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


Dzięki przeogromne @nospor męczyłem się z tym ok tygodnia .
Taką pomoc to ja rozumiem oby więcej takich moderatorów .


---temat do zamknięcia---

Cytat(dunce @ 28.02.2014, 18:40:21 ) *
Mam dosyć odsyłaczy do innych stron lub google - ludzie pamiętajcie że nikt nie lubi forów gdzie zamiast pomagać odsyla sie gdzie indziej .
Jaki jest sens istnienia forum lub nawet działu w którym się nie pomaga .
Mam pomysł - wklejcie kod wyszukiwarki żeby zamiast odpowiedzi na zadane pytanie pokazywało się np. google i sprawa będzie załatwiona.


A wy którzy odsyłają do google lub innych stron - PAMIĘTAJCIE ŻE SZUKAJĄCY PROBLEMÓW NAPĘDZAJĄ FORUM -rozwiązujcie je a nie odsyłajcie .

Ten post edytował dunce 2.03.2014, 12:40:16
Go to the top of the page
+Quote Post
nospor
post
Post #11





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




@dunce to nie do konca tak....
Nikt tu na forum nie chce, by forum bylo napedzane przez leni patentowantowanych co czekają tylko na gotowca. Naprawde takich ludzi "napedzajacych" tutaj nie potrzebujemy. No i nie mowie, ze mam na mysli Ciebie. Podalem tylko przyklad, ze nie kazdy typ usera jest tu mile widziany.

Odsylanie do manuali bardzo czesto ma sens. Uzytkownicy bardzo czesto wychodzą z zalozenia, ze forum jest od tego by im wszystko podac na tacy.... Tak nie jest. Jak ktos sie pyta o banalną rzecz, ktora bardzo dobrze jest opisana w manualu lub bez problemu do odnalezenia w google, to sorki, ale to tylko żle o nim swiadczy i dostaje kopniaka wlasnie do manuala.

Tobie niestety tez by sie przydalo troche podstaw takich jak:
1)zapytania w php wykonuje sie przy uzyciu miedzy innymi przy uzyciu mysql_query a nie poprzez samo ich napisanie..... To tak jakbys napisal na karce liste zakupow do zrobienia i czekal az samo sie wszystko na stole pojawi
2) Podstawy skladni UPDATE.
To są rzeczy, ktore powinienies dowiedziec sie sam., gdyz są ogolnie dostepne, za darmo i są to podstawy podstaw.

Na przyszłość więc mniej krzycz, jak to napedzasz forum, a wiecej rob samemu. (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
dunce
post
Post #12





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 24.02.2014

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


Niestety pragnę się niezgodzić z twoją wypowiedzią tylko konkretne zapytanie w wyszukiwarce pokieruje szukającego do waszej strony .Rozumiem że jest ona już rozbudowana i ma swoja renomę ale początki w których każdy problem był skrupulatnie rozpatrywany i rozwiązywany miało każde szanujące się forum, i niestety panie nospor ale właśnie tacy jak ja napędzają nawet to forum - bez nawet tak prostych zapytań to forum by nie istniało.
Problem jak widziałeś starałem się sam rozwiązać - nie każdy wie wszystko ale właśnie tu pojawia się wszechmocny INTERNET w którym jest wszystko jak to mówią "nie ma w gogle nie ma wogle' . i teraz ktoś inny szukający tego samego rozwiązania znajdzie konkretną odpowiedź a nie odesłanie do google.
Wiesz jak wkurza jak w google podczas poszukiwań rozwiązania w pierwszej dziesiątce znajdujesz stronkę np. waszą i wchodzisz w nia pełen nadziei a tu jakiś wał pisze "Poszukaj sobie w google to nie boli" I tak w koło macieju .

Pozdrawiam i oby to forum nie osiadło na laurach bo jest dobre.
Go to the top of the page
+Quote Post
nospor
post
Post #13





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Wiesz jak wkurza jak w google podczas poszukiwań rozwiązania w pierwszej dziesiątce znajdujesz stronkę
A wiesz jak wkurza gdy na forum poraz milionowy pada pytanie:
czemu to sie nie wykonuje: $sql = 'tu zapytanie';
tylko i wylacznie dlatego ze panu leniwemu nie chcialo sie doczytac wpierw darmowego i po polsku kursu php + mysql? Forum naprawde nie jest na takie pytania.

Cytat
Pozdrawiam i oby to forum nie osiadło na laurach bo jest dobre.
Forum nie osiada na laurach. Forum jedynie stara sie wymusic na leniuszkach odrobine wiecej samodzielonosci. Na kazdym normalnym forum tak banalne pytania, wynikajace z lenistwa, są zamykane a w najlepszym stopniu komentowane.

Skoro łapiesz się za mysql, to wpierw powinienies zapoznac sie z podstawową obsługą mysql w php. Przychodzenie na forum z pytaniem, czemu napisanie zapytania nie powoduje jego wykonania swiadczy, że nie zapoznales się wpierw z podstawą.
Przychodzenie na forum z zapytaniem, które jest totalnie niepoprawne składniowo, swiadczy, ze nie raczyles zajrzec do manuala by zobaczyc jak skladnia zapytania powinna wygladac.

Forum nie sluzy na poprawianiu podstawowej skladni za leniuszka. Wszystko to jest opisane w dostepnej za darmo dokumentacji. Tutaj nie trzeba wertowac google by znalezc odpowiedz. Tutaj wystarczy zajrzec do manuala mysql lub php w zaleznosci od problemu.
Go to the top of the page
+Quote Post
dunce
post
Post #14





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 24.02.2014

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


Zmuszony jestem przyznać Ci rację faktem jest że niektórzy pragną napisać strone bez wiedzy i za darmo zadając pytania na różnych forach a niektóre pytania kierują bez sensu i to po raz wtóry .
Pozdrawiam i mam nadzieję że nastepny raz jak zwrócę się z problemem na waszym forum nie będę kojarzony z "leniuszkiem" bo nawet najlepsi nie są wszechwiedzącymi i każdy może czegoś nie wiedzieć lub przeoczyc i żaden manual nie pomaga wiedzieć wszystkiego.
Go to the top of the page
+Quote Post
nospor
post
Post #15





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
" bo nawet najlepsi nie są wszechwiedzącymi i każdy może czegoś nie wiedzieć lub przeoczyc i żaden manual nie pomaga wiedzieć wszystkiego.
Zgadza sie, ale akurat Twoje pytanie tutaj zadane, do takich nie nalezalo (IMG:style_emoticons/default/wink.gif)

Cytat
Pozdrawiam i mam nadzieję że nastepny raz jak zwrócę się z problemem na waszym forum nie będę kojarzony z "leniuszkiem"
I tak trzymac.

I zmien proszę te stopke. Tylko wzbudza niepotrzebne emocje (IMG:style_emoticons/default/wink.gif)
To nie jest rozkaz, jedynie prośba.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 12:15