Nie wykrywalny błąd

0

Witajcie (blebleble , nie będę wam zanudzał.).

Napisałem pewien kod ale za każdym razem wyskakuje błąd PHP. A ja do kurny blaszki nie wiem w czym rzecz.

Błąd
Parse error: syntax error, unexpected T_VARIABLE in /virtual/r/i/riktelner.ugu.pl/mail.php on line 7

Kod PHP

<?php

require_once("connect.php");

$mynick =$_POST[username]

$query=mysql_query ("SELECT `id` FROM `members` WHERE `username` = $mynick");

?>

I takie mini pytanko , czy można mi stworzyć folder inc (patrz na silnik MyBB) , nie chce podpaść w jakiejś chwili.

2
  1. Nie masz średnika po $_POST[username]. Przez to dostajesz, że zmienna ($query) jest nieoczekiwana (unexpected T_VARIABLE),
  2. Zmień sobie $_POST[username] na $_POST['username'], bo teraz to jeszcze powinieneś dostawać E_NOTICE, że username nie jest stałą.
  3. Poczytaj kiedyś o SQL injection, twój kod jest dość niebezpieczny.
  4. Wolno ci wszystko, możesz tworzyć foldery jakie chcesz, nie rozumiem pytania :-)
0

Popierwsze dziękuję za całkowitą poprawną i szybką odpowiedź.

Z folderem ochodzi mi o to czy mogę utworzyć folder inc , gdyż w silniku forum MyBB też znajduje się taki folder lecz nie widziałem go jeszcze nigdzie.

[hr]
Najnowszy kod :

<?php
 
require_once("connect.php");
 
$mynick = $_POST['username'];
 
$query=mysql_query ("SELECT `id` FROM `members` WHERE `username` = $mynick");
 
?>

Tym razem całej strony nie ma :(. Na stronie na której hostuje swoje pliki są również reklamy. Teraz jedyne co widać to biała prostokątna "plama" pulpitowa :).

1

"Szczelam" - brak apostrofów otaczających $mynick...
To chyba już tobie pisałem o mysql_error()... (nie, nie tobie...)

0

" ani ' nie reaguje.

" wyskakuje error o T_VARIABLE (czy jakoś tak)
' stan zostaje jaki był.

1

a jesteś pewien, że połączenie z bazą jest ok. Oraz czy tabela members istnieje. a w ogóle to: http://php.net/manual/en/function.mysql-error.php

1

Tak w ogóle to nawet jeśli zapytanie się powiedzie przecież nic nie robisz z wynikiem...

0

Ech nie mogę... To tylko część kodu. Dałem jego otwarcie i zamknięcie abyście nie myśleli o "nie-kłopocie" tylko o kłopocie.

2xup Jestem
UP i tak nie wiem jak to wmontować TERAZ w ten kod :|

1

Jeśli się pojawia pusta strona - masz gdzieś błąd PHP. Uruchom to na jakimś serwerze do testów, gdzie jest ustawione display_errors na 1 i error_reporting przynajmniej na E_ALL i powinieneś dojść gdzie jest problem, bo pewnie przestawić tych ustawień na ugu się nie da.

0

Hostuje na XAMPPie na localhoście. Zaraz zmienię z 0 na 1 (jak jest 0). I podam błąd (o ile wyskoczy).

@Edit : Wcześniej hostowałem na ugu.pl ale teraz mi się znudził wolny internet więc zainstalowałem XAMPPa ale to niczego nie zmieniło oprócz adresu strony i reklamy.

Uno

; display_errors
;   Default Value: On
;   Development Value: On
;   Production Value: On

Duo

; error_reporting
;   Default Value: E_ALL & ~E_NOTICE
;   Development Value: E_ALL | E_STRICT
;   Production Value: E_ALL & ~E_DEPRECATED

Niby wszystko jest to co kazałeś...

1

Zdajesz sobie sprawę, że " ; " działa jak komentarz jedno-liniowy?

0

Eh , jak umiem PHP to tylko pisać to co na ekranie widać. Nie umiem edytować "rzeczowego" PHP.

poza tym przeszukujące plik php.ini , znalazłem tylko te linijki.

PS : Dlaczego poza tym jest napisane na zielono? // Poprawione...

1

Odkomentuj/dopisz odpowiednie linie, ma być wpisane:

display_errors = On
error_reporting = E_ALL

Powinny być jakieś dodatkowe informacje o błędzie (przynajmniej mam taką nadzieję).

0

Notice: Undefined index: username in A:\Programy\XAMP\htdocs\mail.php on line 5

No w SPACJA końcu! Już zacząłem okładać komputer wtyczką do kontaktu za nie posłuszeństwo :D .

0

jak nie wiesz co oznacza błąd to Debugowanie kodu PHP (bez debuggera) może mój artykuł się przyda

0

Dziękuję za próbę pomocy , ale zanim napisałem temat przeszukałem dosłownie 9 stron w Google. W tym strona na której znajdowały się ten kody. Nie działały , a że efektu nie miało to je wyskasowałem.

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: YES) in A:\Programy\XAMP\htdocs\connect.php on line 10
It seems this site's database isn't responding.

A tuż kto to wyjaśni? Miałem testować plik , chciałem się zalogować... ale fajny błąd wyskoczył... wie może co to jest?
Sprawdziłem bazę , moje hasło roota i no cóż jestem rootem , a strona jest na komputerze więc localhost. Cały kod fooconnect.phpfoo

<?php

	// MySQL connect information.
	$c_username = "root";
	$c_password = "hąśłó";
	$c_host = "localhost";
	$c_database = "login_system";

	// Connect.
	$connection = mysql_connect($c_host, $c_username, $c_password)
	or die ("It seems this site's database isn't responding.");

	mysql_select_db($c_database)
	or die ("It seems this site's database isn't responding.");

?>

Przepraszam za doubleposta myślałem że tutaj się posty łączą.

0

Nie możesz się połączyć z bazą, czy na pewno hasło jest wymagane? jak nie to daj ''

0

Tak wszystko wymagane wszystko poprawne. W poście napisałem że sprawdziłem... nie klepcie postów...

0

Wyraźnie widać, że MySQL odrzuca połączenie dla użytkownika root@localhost z hasłem. Hasło jest złe lub użytkownik nie ma uprawnień. Jeżeli Twoje hasło do bazy to faktycznie "hąśło" to sprawdź czy kodowanie znaków jest poprawne - pewnie PHP inaczej zakodował znaki i dla MySQL hasło jest niepoprawne.

0

Wiem w czym był błąd poprawione. Moje hasło to na pewno nie hąśłó , za łatwe do cracknięcia... a jakieś pomysły jak rozwiązać ten problem?

0

Błąd z połączeniem rozwiązałem , ale w innym pliku był ten problem i go rozwiązałem.
Ale dalej jest problem z mail.php. Do kogo mam się zgłosić jak programiści nie wiedzą co to jest? Do Pana Lerdorfa?

0

A raczyłeś mail.php wraz z opisem konkretnego problemu podesłać? :|

0

jeśli chodzi o to:

Ertelner napisał(a)

Notice: Undefined index: username in A:\Programy\XAMP\htdocs\mail.php on line 5

No w SPACJA końcu! Już zacząłem okładać komputer wtyczką do kontaktu za nie posłuszeństwo :D .

to ci napisałem:

konrados napisał(a)

jak nie wiesz co oznacza błąd to Debugowanie kodu PHP (bez debuggera) może mój artykuł się przyda

0
  • "Notice: Undefined index: X in *"

oznacza, że w tabeli nie istnieje indeks o nazwie X**

Jak dodać ten index...?... kiedy jest wypełniona tabela... nawet dwie.

0

W $_POST nie zawsze muszą być dane, jeśli formularz nie został wypełniony lub został wypełniony niekompletnie/spreparowany/wtf. Sprawdź za pomocą isset czy pole do którego chcesz się odwołać w ogóle istnieje.

0

Czyli jak?

0

kliknij w słowo isset w poście wyżej

0

Czyli jak mam to zrobić?

$mynick=$_POST['username']

if (isset($mynick)) {
    echo "Poprawne";
}

?

0
if (isset($_POST['username'])) {
    echo "Poprawne";
}
0

No i pusta strona :(

1 użytkowników online, w tym zalogowanych: 0, gości: 1