awek520
11.03.2014, 22:25:34
Witam.. Mam błąd w kodzie:
<?php
require "baza.php";
if (user::isLogged()) {
// Widok dla użytkownika zalogowanego
// Pobierz dane o użytkowniku i zapisz je do zmiennej $user
$user = user::getData('', '');
require "baza.php";
<center>
<form method="post" action="index.php?id=17">
<script type="text/javascript" src="nicEdit-latest.js"></script> <script type="text/javascript">
//<![CDATA[
bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
//]]>
</script>
<center><input type="text3" name="tytul" size="" value="'.$wiersz['tytul'].'">
<br>
<center><textarea name="tresc" style="width: 97%;">'.$wiersz['tresc'].'</textarea>
<br>
<center><input type="submit" value="EDYTUJ">';
}
elseif(isset($_GET['home']) && $_GET['home']=='wyedytuj' && isset($_GET['id'])) {
$tytul=$_POST['tytul'];
$tresc=$_POST['tresc'];
mysql_query("UPDATE home SET tytul='$tytul', tresc='$tresc'"); <center>Podstrona została poprawnie wyedytowana.<br>
<a href="index.php">Kliknij tutaj!</a>';
}
}
else {
// Widok dla użytkownika niezalogowanego
require "baza.php";
echo "<div class='p3'><center>"; echo "".$wiersz['tytul']." </center></div><img src='images/linia.png'><br>
".$wiersz['tresc']."
</div>
";
}
}
?>
</center>
Cytat
Parse error: syntax error, unexpected T_ELSEIF in C:\WebServ\httpd\home.php on line 31
Nie jestem dobry w te klocki, a musze to zrobic..

mógłby mi ktoś pomoc? Ma to byc taka mała edycja tresci dla zalogowanego użytkownika.. W sumie, nie wiem co tutaj tłumaczyc bo i tak większosc z Was to widzi
Pozdrawiam
Kshyhoo
11.03.2014, 22:44:19
Policz ile masz { i }. Z taką pierdołą na Forum?
awek520
11.03.2014, 22:46:48
Pasuje.. jest tylko ile powinno byc.. Nie wiem gdzie ty widzisz ten bład..
Kshyhoo
11.03.2014, 22:51:07
Nie umiesz policzyć do trzech? Jeżeli instrukcja otwarcia to { a zamknięcia }, to ich ilość powinna się pokrywać. Jak masz tak:
if {
//
} elseif {
//
}
} else {
//
}
To się nie dziw...
Po to używa się formatowania kodu... żeby widzieć.
awek520
11.03.2014, 22:54:16
Cytat(Kshyhoo @ 11.03.2014, 22:51:07 )

Nie umiesz policzyć do trzech? Jeżeli instrukcja otwarcia to { a zamknięcia }, to ich ilość powinna się pokrywać. Jak masz tak:
if {
//
} elseif {
//
}
} else {
//
}
To się nie dziw...
Po to używa się formatowania kodu... żeby widzieć.
No tak.. ale ten pierwszy { po if zamyka ten ostatni przed else..
Tutaj też jest jeden.. policz to dokładnie to zobaczysz..
Kshyhoo
11.03.2014, 22:59:02
To są twoje pętle:
if (user::isLogged()) {
} elseif(isset($_GET['home']) && $_GET['home']=='wyedytuj' && isset($_GET['id'])) {
}
} else {
}
}
Gdzie tu logika? Popatrz, policz, zmień. Wróć z "prawdziwymi" problemami.
awek520
11.03.2014, 23:04:52
Fatal error: Class 'user' not found in C:\WebServ\httpd\home.php on line 3 a to jest "prawdziwy" problem czy też nie ?
Ps.. Hmm.. Tak myślę że to z user coś nie tak.. ale to dziwne bo normalnie powinno to działac..
IceManSpy
11.03.2014, 23:06:41
A czego nie rozumiesz w tym błędzie?
Nie znaleziono klasy user.
Pewno nie zainclude'owałeś jej lub raczej nie require'owałeś.
awek520
11.03.2014, 23:09:05
Dodałem:
require_once 'user.class.php';
i działa
Ale dalej nie wiem co z tymi { i }
: / Szukam szukam i nic..
MrCoody
11.03.2014, 23:22:06
patrz 38 linijkę a później zobacz na 40

któryś z tych znaków nie jest potrzebny
awek520
11.03.2014, 23:25:28
Patrzyłem, usunąłem najpierw jeden, potem drugi, potem 2 naraz.. i nic.. dalej to samo..
Piszę, że błąd w tej linijce
elseif(isset($_GET['home']) && $_GET['home']=='wyedytuj' && isset($_GET['id']))
Korzystam z notepada i wiem gdzie znacznik { się zaczyna a kiedy kończy } .. I niby wszystko jest OK.
Gdy usunąłem:
elseif { } stronką działa normalnie.. : /
Turson
11.03.2014, 23:28:21
Przed elseif daj jeszcze jeden }, bo jeden masz od ifa, a od while nie jest zamkniety
awek520
11.03.2014, 23:32:08
Dalej nic.. To nie pomaga.. Coś innego chyba z tym jest.. Ale i tak dziękuje za pomoc..
Gdy usuwam:
elseif(isset($_GET['home']) && $_GET['home']=='wyedytuj' && isset($_GET['id']))
{
}
strona działa normalnie.. gdy to jest, wywala błąd.
MrCoody
11.03.2014, 23:34:48
dopisz w 28 } a w 40 usuń i spróbuj
Turson
11.03.2014, 23:35:46
Pokaż kod po zmianach
@up
trafiłeś w sedno
awek520
11.03.2014, 23:36:24
Ostatnia zmiana:
<?php
require "baza.php";
if (user::isLogged()) {
// Widok dla użytkownika zalogowanego
// Pobierz dane o użytkowniku i zapisz je do zmiennej $user
$user = user::getData('', '');
require "baza.php";
{
<center>
<form method="post" action="home.php?home=wyedytuj&id=1">
<script type="text/javascript" src="nicEdit-latest.js"></script> <script type="text/javascript">
//<![CDATA[
bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
//]]>
</script>
<center><input type="text3" name="tytul" size="" value="'.$wiersz['tytul'].'">
<br>
<center><textarea name="tresc" style="width: 97%;">'.$wiersz['tresc'].'</textarea>
<br>
<center><input type="submit" value="EDYTUJ">';
}
}
require_once 'user.class.php';
elseif(isset($_GET['home']) && $_GET['home']=='wyedytuj' && isset($_GET['id'])) {
$tytul=$_POST['tytul'];
$tresc=$_POST['tresc'];
mysql_query("UPDATE home SET tytul='$tytul', tresc='$tresc'"); <center>Podstrona została poprawnie wyedytowana.<br>
<a href="index.php">Kliknij tutaj!</a>';
}
else {
// Widok dla użytkownika niezalogowanego
require "baza.php";
echo "<div class='p3'><center>"; echo "".$wiersz['tytul']." </center></div><img src='images/linia.png'><br>
".$wiersz['tresc']."
</div>
";
}
}
?>
</center>
MrCoody - Dalej nie działa.. : /
MrCoody
11.03.2014, 23:47:52
jaki masz błąd? co wyświetla ?
awek520
11.03.2014, 23:48:24
Parse error: syntax error, unexpected T_ELSEIF in C:\WebServ\httpd\home.php on line 34
Turson
11.03.2014, 23:55:20
require_once nie może być w linii 33, wrzuć to w elseif
MrCoody
11.03.2014, 23:57:29
albo zamień require_once z 33 na require i wrzuć do elseifa

@up nie zauważyłem że to samo napisałeś
awek520
11.03.2014, 23:58:53
W { } czy przed tym, za elseif?
Mam teraz taki bląd:
Parse error: syntax error, unexpected T_ELSE in C:\WebServ\httpd\home.php on line 48
Jak wrzucam to do {} to znowu ten user nie wchodzi..
Turson
12.03.2014, 00:02:33
Wszystkie require wrzuć na samą górę
if(){
}
tutaj nic nie może być
elseif(){
}
MrCoody
12.03.2014, 00:04:00
daj kod po zmianie bo nie wiemy jak edytowałeś
awek520
12.03.2014, 00:04:54
Ok, tak własnię sie domyśliłem bo miałem błąd..
Wrzuciłem to na samą górę i wywaliło teraz:
Fatal error: Cannot redeclare class user in C:\WebServ\httpd\user.class.php on line 3
<?php
class user {
public function getData ($login, $pass) {
if ($login == '') $login = $_SESSION['login'];
if ($pass == '') $pass = $_SESSION['pass'];
return self::$user;
}
Nie wiem co z tym jest.. te logowanie bralem z internetu..
Turson
12.03.2014, 00:07:02
Błąd tyczy nie klasy. Nie dawaj 5x tego samego require. Jedno wystarczy, tym lepiej jak będzie to require_once.
MrCoody
12.03.2014, 00:07:10
klasa user jest nie zamknięta
Cannot redeclare class userto mniej więcej znaczy to że nie można zrobić takiej samej klasy

czyli że zrobiłeś dwie takie same, a jak nie to zrequirowałeś sobie dwa razy to samo
awek520
12.03.2014, 00:09:41
To chwilka.. mam to dobrze??
plik HOME.php
<?php
if (user::isLogged()) {
require_once 'user.class.php';
require_once "baza.php";
// Widok dla użytkownika zalogowanego
// Pobierz dane o użytkowniku i zapisz je do zmiennej $user
$user = user::getData('', '');
bo znów mam coś z tym user.. ; /
Cytat
Fatal error: Class 'user' not found in C:\WebServ\httpd\home.php on line 2
PS. Tak, mam require_once 'user.class.php' w pliku index.php, a home i index się łaczą..
MrCoody
12.03.2014, 00:11:30
Cytat
if (user::isLogged()) {
require_once 'user.class.php'; #to ma załadować to co jest pogrubione
require_once "baza.php"; #to raczej podobnie, daj to przed poprzednie
a te z komentarzami linijki daj przed if
Turson
12.03.2014, 00:11:54
<?php
require_once "baza.php";
require_once 'user.class.php';
if (user::isLogged()) {
// Widok dla użytkownika zalogowanego
// Pobierz dane o użytkowniku i zapisz je do zmiennej $user
$user = user::getData('', '');
<center>
<form method="post" action="home.php?home=wyedytuj&id=1">
<script type="text/javascript" src="nicEdit-latest.js"></script> <script type="text/javascript">
//<![CDATA[
bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
//]]>
</script>
<center><input type="text3" name="tytul" size="" value="'.$wiersz['tytul'].'">
<br>
<center><textarea name="tresc" style="width: 97%;">'.$wiersz['tresc'].'</textarea>
<br>
<center><input type="submit" value="EDYTUJ">';
}
}
elseif(isset($_GET['home']) && $_GET['home']=='wyedytuj' && isset($_GET['id'])) {
$tytul=$_POST['tytul'];
$tresc=$_POST['tresc'];
mysql_query("UPDATE home SET tytul='$tytul', tresc='$tresc'"); <center>Podstrona została poprawnie wyedytowana.<br>
<a href="index.php">Kliknij tutaj!</a>';
}
else {
// Widok dla użytkownika niezalogowanego
require "baza.php";
echo "<div class='p3'><center>"; echo "".$wiersz['tytul']." </center></div><img src='images/linia.png'><br>
".$wiersz['tresc']."
</div>
";
}
}
?>
</center>
awek520
12.03.2014, 17:07:13
Dziękuje Wam bardzo za poświęcony czas

wszystko działa jak nalezy

Dobranoc

I jeszcze raz dziękuje

Hmm.. ale czekajcie.. Bo teraz wychodzi na to, że
elseif(isset($_GET['home']) && $_GET['home']=='wyedytuj' && isset($_GET['id'])) {
$tytul=$_POST['tytul'];
$tresc=$_POST['tresc'];
mysql_query("UPDATE home SET tytul='$tytul', tresc='$tresc'"); <center>Podstrona została poprawnie wyedytowana.<br>
<a href="index.php">Kliknij tutaj!</a>';
}
jest dla każdego, jak i dla zarejestrowanego jak i do niezalogowanego..
Jak to można zmienic??
Turson
12.03.2014, 17:35:21
Zacznij myśleć logicznie.
<?php
require_once "baza.php";
require_once 'user.class.php';
if (user::isLogged()) {
if(isset($_GET['home']) && $_GET['home']=='wyedytuj' && isset($_GET['id'])){ $tytul=$_POST['tytul'];
$tresc=$_POST['tresc'];
mysql_query("UPDATE home SET tytul='$tytul', tresc='$tresc'"); <center>Podstrona została poprawnie wyedytowana.<br>
<a href="index.php">Kliknij tutaj!</a>';
}
// Widok dla użytkownika zalogowanego
// Pobierz dane o użytkowniku i zapisz je do zmiennej $user
$user = user::getData('', '');
<center>
<form method="post" action="home.php?home=wyedytuj&id=1">
<script type="text/javascript" src="nicEdit-latest.js"></script> <script type="text/javascript">
//<![CDATA[
bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
//]]>
</script>
<center><input type="text3" name="tytul" size="" value="'.$wiersz['tytul'].'">
<br>
<center><textarea name="tresc" style="width: 97%;">'.$wiersz['tresc'].'</textarea>
<br>
<center><input type="submit" value="EDYTUJ">';
}
}
else {
// Widok dla użytkownika niezalogowanego
require "baza.php";
echo "<div class='p3'><center>"; echo "".$wiersz['tytul']." </center></div><img src='images/linia.png'><br>
".$wiersz['tresc']."
</div>
";
}
}
?>
</center>
awek520
12.03.2014, 18:25:04
Dziękuje

Pozdrawiam
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.