Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> Undefined index
ilov3
post 25.11.2019, 23:02:21
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 12.07.2013

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


Witam, mam problem z uruchomieniem stronki którą kiedyś napisał kolega.
Pluje errorami.

  1. Notice: Undefined index: action in C:\xampp\htdocs\index.php on line 239
  2.  
  3. Notice: Undefined index: action in C:\xampp\htdocs\index.php on line 325
  4.  
  5. Notice: Undefined index: action in C:\xampp\htdocs\index.php on line 455
  6.  
  7. Notice: Undefined index: action in C:\xampp\htdocs\index.php on line 461


239:
  1. else if($_GET['action'] === "editprofile")
  2. {
  3. if(empty($_SESSION['username']) || empty($_SESSION['password']))
  4. {
  5. header("Refresh:0; url=index.php");
  6. echo "<script language='javascript'>alert('Musisz być zalogowany!');</script>";
  7. return 0;
  8. }


  1. else if($_GET['action'] === "newauction")
  2. {
  3. $query = mysql_query("SELECT * FROM categories");
  4. while ($row = mysql_fetch_array($query))
  5. {
  6. $auctionCategories .= '
  7. <option value="'.$row[id].'">'.$row[name].'</option>
  8. ';
  9. }


Połączenie z bazą:

  1. <?php
  2.  
  3. $connection = @mysql_connect("localhost", "root", "") or die("Brak połączenia z serwerem MySQL.<br />Błąd: ".mysql_error());
  4. $db = @mysql_select_db("zpi_project", $connection) or die("Nie mogę połączyć się z bazą danych<br />Błąd: ".mysql_error());
  5. mysql_query ('SET NAMES utf8');
  6. ?>



W czym może leżeć problem?
Go to the top of the page
+Quote Post
dublinka
post 26.11.2019, 07:53:40
Post #2





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

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


Odpowiedzi szukaj w $_GET['action']


--------------------
Go to the top of the page
+Quote Post
ilov3
post 26.11.2019, 08:30:39
Post #3





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 12.07.2013

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


tylko dziwna sprawa bo kiedyś to działało bez żadnego problemu, a teraz nie mogę sobie poradzić
Go to the top of the page
+Quote Post
dublinka
post 26.11.2019, 10:11:21
Post #4





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

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


Zmienna z get nie istnieje/brak wartosci


--------------------
Go to the top of the page
+Quote Post
nospor
post 26.11.2019, 10:14:21
Post #5





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Cytat
tylko dziwna sprawa bo kiedyś to działało bez żadnego problemu

Nie, kiedys poprostu miales wylaczone wyswietlanie bledow i ich nie widziales. Teraz pewnie zmieniles wersje php, tudziez twoj hosting zmienil, i zmienil sie sposob ich wyswietlania. Ot i cala filozofia

Kod jak ten
else if($_GET['action'] === "editprofile")

maja wygladac tak
else if(isset($_GET['action']) && $_GET['action'] === "editprofile")


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ilov3
post 26.11.2019, 11:14:24
Post #6





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 12.07.2013

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


Cytat(nospor @ 26.11.2019, 10:14:21 ) *
Nie, kiedys poprostu miales wylaczone wyswietlanie bledow i ich nie widziales. Teraz pewnie zmieniles wersje php, tudziez twoj hosting zmienil, i zmienil sie sposob ich wyswietlania. Ot i cala filozofia

Kod jak ten
else if($_GET['action'] === "editprofile")

maja wygladac tak
else if(isset($_GET['action']) && $_GET['action'] === "editprofile")


Mogło być wyłączone wyświetlanie błędów, jednakże i tak nie działa większość rzeczy jakie znajdowały się na stronie.
Po dodaniu kodu, jaki zaproponowałeś znikają błędy - fakt. Jednakże to co jeszcze w miarę działało przestało działać.
Nie pojawia się formularz logowania, a wcześniej chociaż można było się zalogować. Poza tym nie działa rejestracja, choć formularz normalnie się wyświetla - mimo to dane nie są zapisywane do bazy.

Wiem, że zaraz zostanę skrytykowany itd., ale nie znam się a chciałbym uruchomić tą stronę.
Co mogę Wam podesłać by uzyskać pomoc?

Ten post edytował ilov3 26.11.2019, 11:16:13
Go to the top of the page
+Quote Post
viking
post 26.11.2019, 11:16:10
Post #7





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Bo to mysql_query i inne funkcje mysql_ zostały dawno usuniete z php.


--------------------
Go to the top of the page
+Quote Post
ilov3
post 26.11.2019, 11:16:57
Post #8





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 12.07.2013

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


Cytat(viking @ 26.11.2019, 11:16:10 ) *
Bo to mysql_query i inne funkcje mysql_ zostały dawno usuniete z php.


używam wersji 5.6.40
Go to the top of the page
+Quote Post
nospor
post 26.11.2019, 11:18:24
Post #9





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Daj w index.php na samym poczatku

phpinfo();
exit;

Co bysmy mieli i my i ty pewnosc odnosnie tej wersji php. Juz nie jeden mowil ze uzywa jednej a sie okazywalo ze uzywa innej wink.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ilov3
post 26.11.2019, 11:32:00
Post #10





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 12.07.2013

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


Cytat(nospor @ 26.11.2019, 11:18:24 ) *
Daj w index.php na samym poczatku

phpinfo();
exit;

Co bysmy mieli i my i ty pewnosc odnosnie tej wersji php. Juz nie jeden mowil ze uzywa jednej a sie okazywalo ze uzywa innej wink.gif


Mam pewność co do wersji gdyż używam Wampserver64 i wybrałem najniższą wersję, która wspiera starego mysql'a. Na nowszych nie jestem w stanie tego uruchomić wcale.
Go to the top of the page
+Quote Post
nospor
post 26.11.2019, 11:34:27
Post #11





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Bo przeciez zrobic

phpinfo();
exit;

to tak dlugo czasu zajmuje... DObra, widze sam do wszystkiego dojdziesz wink.gif

a jeszcze tak zapytam: to na serwerze tez uzywasz wampserver?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ilov3
post 26.11.2019, 11:54:56
Post #12





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 12.07.2013

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


Cytat(nospor @ 26.11.2019, 11:34:27 ) *
Bo przeciez zrobic

phpinfo();
exit;

to tak dlugo czasu zajmuje... DObra, widze sam do wszystkiego dojdziesz wink.gif

a jeszcze tak zapytam: to na serwerze tez uzywasz wampserver?



Sprawdziłem, nie pisałbym gdybym nie miał pewności. Później wrzucę screena.

Mam tą stronę tylko lokalnie postawioną.
Go to the top of the page
+Quote Post
nospor
post 26.11.2019, 12:00:02
Post #13





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Aktualizowales ostatnio ten wampserver?

Jak wygladaja linki do poszczegolnych akcji? np do editprofile


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ilov3
post 26.11.2019, 13:37:24
Post #14





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 12.07.2013

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


Mam najnowszą dostępną wersję. Próbowałem również na xampie z php w wersji 5.6.40 nic to nie zmieniło.

  1. <li><a href="index.php?action=editprofile">Edytuj dane</a></li>




I obiecana wersja PHP:
Apache Version Apache/2.4.39 (Win64) PHP/5.6.40 z ładnej lekko fioletowej strony.
Go to the top of the page
+Quote Post
nospor
post 26.11.2019, 15:55:15
Post #15





Grupa: Moderatorzy
Postów: 36 457
Pomógł: 6296
Dołączył: 27.12.2004




Cytat
I obiecana wersja PHP:
Nie. Obiecales screena wink.gif

No i ktora strona przykladowo ci nie dziala? Jaki jest jej kod? Sprawdzales w ogole logi bledow?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ilov3
post 26.11.2019, 21:57:39
Post #16





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 12.07.2013

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


Cytat(nospor @ 26.11.2019, 15:55:15 ) *
Nie. Obiecales screena wink.gif

No i ktora strona przykladowo ci nie dziala? Jaki jest jej kod? Sprawdzales w ogole logi bledow?


Rejestracja nie dodaje danych do bazy tak jak wcześniej wspominałem.

  1. else if($_GET['action'] === "register")
  2. {
  3. if(isset($_POST['registerSubmit']))
  4. {
  5. $username = $_POST['registerName'];
  6. $password = $_POST['registerPassword'];
  7. $firstname = $_POST['registerFirstname'];
  8. $surname = $_POST['registerSurname'];
  9. $email = $_POST['registerEmail'];
  10. $place = $_POST['registerPlace'];
  11. $phone = $_POST['registerPhone'];
  12. $bank = $_POST['registerBank'];
  13.  
  14. $query = mysql_query("SELECT NULL FROM users WHERE username LIKE '".$username."'");
  15. $query2 = mysql_query("SELECT NULL FROM users WHERE email LIKE '".$email."'");
  16.  
  17. if(mysql_num_rows($query) > 0)
  18. {
  19. echo "<script language='javascript'>alert('Taka nazwa użytkownika jest zajęta - wybierz inną!');</script>";
  20. }
  21. else if(mysql_num_rows($query2) > 0)
  22. {
  23. echo "<script language='javascript'>alert('Taki adres e-mail jest już zarejestrowany - wybierz inny!');</script>";
  24. }
  25. else if(strlen($username) > 32 || strlen($username) < 3)
  26. {
  27. echo "<script language='javascript'>alert('Nazwa użytkownika powinna zawierać 3 - 32 znaków!');</script>";
  28. }
  29. else if(strlen($password) > 32 || strlen($password) < 3)
  30. {
  31. echo "<script language='javascript'>alert('Hasło powinno zawierać 3 - 32 znaków!');</script>";
  32. }
  33. else if(strlen($firstname) > 64 || strlen($firstname) < 3)
  34. {
  35. echo "<script language='javascript'>alert('Imię powinno zawierać 3 - 64 znaków!');</script>";
  36. }
  37. else if(strlen($surname) > 64 || strlen($surname) < 3)
  38. {
  39. echo "<script language='javascript'>alert('Nazwisko powinno zawierać 3 - 64 znaków!');</script>";
  40. }
  41. else if(strlen($place) > 128 || strlen($place) < 3)
  42. {
  43. echo "<script language='javascript'>alert('Miejscowość powinna zawierać 3 - 128 znaków!');</script>";
  44. }
  45. else if(strlen($phone) != 9)
  46. {
  47. echo "<script language='javascript'>alert('Numer telefonu składa się z 9 cyfr!');</script>";
  48. }
  49. else if(!is_numeric($phone))
  50. {
  51. echo "<script language='javascript'>alert('Numer telefonu składa się z samych cyfr!');</script>";
  52. }
  53. else if(strlen($bank) != 26)
  54. {
  55. echo "<script language='javascript'>alert('Numer konta bankowego składa się z 26 cyfr!');</script>";
  56. }
  57. else if(!is_numeric($bank))
  58. {
  59. echo "<script language='javascript'>alert('Numer konta bankowego składa się z samych cyfr!');</script>";
  60. }
  61. else
  62. {
  63. mysql_query("INSERT INTO users (username, password, firstname, surname, email, phone, place, bank) VALUES ('".$username."', '".$password."', '".$firstname."', '".$surname."', '".$email."', '".$phone."', '".$place."', '".$bank."')");
  64. header("Refresh:0; url=index.php?action=login");
  65. echo "<script language='javascript'>alert('Pomyślnie założyłeś konto - możesz teraz się zalogować!');</script>";
  66. }
  67. }
  68.  
  69. $index = '
  70. <div class="container" style="margin-top: 20px;">
  71. <div class="row">
  72. <div class="backgroundBox">
  73. <form class="form-horizontal" action="" method="post">
  74. <div class="form-group">
  75. <label for="userName" class="col-sm-2 control-label">Nazwa użytkownika</label>
  76. <div class="col-sm-10">
  77. <input type="text" class="form-control input-lg" id="userName" name="registerName" placeholder="Wpisz tutaj nazwę, która będzie twoim identyfikatorem" required>
  78. </div>
  79. </div>
  80. <div class="form-group">
  81. <label for="userPassword" class="col-sm-2 control-label">Hasło</label>
  82. <div class="col-sm-10">
  83. <input type="password" class="form-control input-lg" id="userPassword" name="registerPassword" placeholder="Wpisz tutaj hasło, które będzie zabezpieczać twoje konto" required>
  84. </div>
  85. </div>
  86. <div class="form-group">
  87. <label for="userFirstname" class="col-sm-2 control-label">Imię</label>
  88. <div class="col-sm-10">
  89. <input type="text" class="form-control input-lg" id="userFirstname" name="registerFirstname" placeholder="Wpisz tutaj swoję imię" required>
  90. </div>
  91. </div>
  92. <div class="form-group">
  93. <label for="userSurname" class="col-sm-2 control-label">Nazwisko</label>
  94. <div class="col-sm-10">
  95. <input type="text" class="form-control input-lg" id="userSurname" name="registerSurname" placeholder="Wpisz tutaj swoję nazwisko" required>
  96. </div>
  97. </div>
  98. <div class="form-group">
  99. <label for="userMail" class="col-sm-2 control-label">E-mail</label>
  100. <div class="col-sm-10">
  101. <input type="email" class="form-control input-lg" id="userMail" name="registerEmail" placeholder="Wpisz tutaj swój e-mail" required>
  102. </div>
  103. </div>
  104. <div class="form-group">
  105. <label for="userPlace" class="col-sm-2 control-label">Miejscowość</label>
  106. <div class="col-sm-10">
  107. <input type="text" class="form-control input-lg" id="userPlace" name="registerPlace" placeholder="Wpisz tutaj swoją miejscowość" required>
  108. </div>
  109. </div>
  110. <div class="form-group">
  111. <label for="userPhone" class="col-sm-2 control-label">Telefon</label>
  112. <div class="col-sm-10">
  113. <input type="text" class="form-control input-lg" id="userPhone" name="registerPhone" placeholder="Wpisz tutaj swój numer telefonu" required>
  114. </div>
  115. </div>
  116. <div class="form-group">
  117. <label for="userBank" class="col-sm-2 control-label">Konto bankowe</label>
  118. <div class="col-sm-10">
  119. <input type="text" class="form-control input-lg" id="userBank" name="registerBank" placeholder="Wpisz tutaj swój numer konta bankowego" required>
  120. </div>
  121. </div>
  122. <div class="form-group">
  123. <div class="col-sm-offset-2 col-sm-10">
  124. <button type="submit" name="registerSubmit" class="btn btn-default input-lg"><span style="font-size: 20px;">Zarejestruj!</span></button>
  125. </div>
  126. </div>
  127. </form>
  128. </div>
  129. </div>
  130. </div>
  131. ';
  132. }
Go to the top of the page
+Quote Post
Tomplus
post 27.11.2019, 09:28:13
Post #17





Grupa: Zarejestrowani
Postów: 1 836
Pomógł: 226
Dołączył: 20.03.2005
Skąd: Będzin

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


zapytań przed SQL Injection nie chronisz?

Sprawdź w logach czy nie masz jakiegoś błędu.
Go to the top of the page
+Quote Post
dublinka
post 27.11.2019, 13:10:18
Post #18





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

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


Przepraszam za trywialne pytanie ale czy wogole w url przekazujesz zmienne bo teraz jakby ich wogole nie bylo ?

Co daje to:

  1. print_r($_GET);


--------------------
Go to the top of the page
+Quote Post
ilov3
post 27.11.2019, 21:30:26
Post #19





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 12.07.2013

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


Cytat(Tomplus @ 27.11.2019, 09:28:13 ) *
zapytań przed SQL Injection nie chronisz?

Sprawdź w logach czy nie masz jakiegoś błędu.


Kod kolegi sprzed dwóch lat to jest, ja go próbuję tylko uruchomić.
Jak sprawdzić logi?
Go to the top of the page
+Quote Post
Tomplus
post 27.11.2019, 22:19:24
Post #20





Grupa: Zarejestrowani
Postów: 1 836
Pomógł: 226
Dołączył: 20.03.2005
Skąd: Będzin

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


Nie tłumacz się kolegą. Zostawiaj kod lepszy niż ten który zastałeś. Więc jak są takie ewidentne dziury w bezpieczeństwie, to nawet nie ma co dopuszczać później w internety.

Kod
\xampp\apache\logs\error.log
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this 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: 26.04.2024 - 15:31