Skocz do zawartości
Sim00n

Pomoc przy problemach PHP

Rekomendowane odpowiedzi

Witam. Chętnie pomogę przy problemach w języku PHP, również z wykorzystaniem MySql. Rozumiem przez to pomoc w rozwiązywaniu problemów, edukowanie początkujących (w miarę moich możliwości edukacyjnych), oraz pokazywanie przykładów lub pomysłów na wykonanie jakichś skryptów.

Wszystkie pytania proszę kierować w tym temacie. Zapewniam miłą atmosferę, życzliwość oraz cierpliwość.

Zgadzam się również na kontakt poprzez (i tylko i wyłącznie) nasz forumowy serwer Ventrilo.

Mam kilka zasad:

1. Pomogę Ci w miarę moich możliwości ponieważ nikt nie jest doskonały i każdy się uczy.

2. Wymagam poprawnej ortografii oraz interpunkcji i ogólnej ogłady w tworzeniu zdań.

3. Nie pomogę napinaczom, naciągaczom, osobą używającym wulgaryzmów, obrażająca innych użytkowników w tym również mnie oraz osobą prowokującym inne a takie posty zazwyczaj są sprzeczne z regulaminem więc również jako moderator odizoluję takie osoby od tematu.

4. Mile widziana jest pomoc ze strony innych programistów.

5. Moje miejsce zamieszkania nie pozwala mi na odpisywanie z odpowiednią szybkością - przez strefę czasową (-5GMT) moje posty będą pojawiać się zazwyczaj wieczorem, lub około godziny 3 rano czasu Polskiego.

6. Za pomoc nie pobieram żadnych opłat ale oznacza to również, że w pewnym momencie mogę zaprzestać pomocy i zamknąć temat (jeżeli nie będzie nikogo chętnego kontynuowania). Może się tak stać po wakacjach ale do tego czasu jeszcze daleko.

Zapraszam wszystkich do dyskusji i życzę przyjemnej nauki ze mną.

Pozdrawiam, Sim00n.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Po 1. post w złym temacie (a właściwie niepotrzebny nowy temat). Problemy proszę wklejać tutaj:

http://pawno.pl/index.php?topic=1867.0

Po 2. zawsze, ale to zawsze układaj kod bo to co podałeś jest nie do zrozumienia...

Po 3. Podaj swój kod na forum lub ewentualnie na rapidshare bo nikt nie będzie Ci chciał pomóc.

Twój kod:


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<title>Żall Mi Jej!</title>
<link rel="Stylesheet" type="text/css" href="styles/index.css" />
</head>
</html>
<body>
<center><div id="top">
<div id="TRESC">
<?php
echo '<form enctype="multipart/form-data" method="post" action="index.php">
<input type="file" name="Filedata" />
<input type="submit" name="ok"></form>';
$f = $_FILES['Filedata']['name'];
$domain = "http://slasheer.c0.pl/";
if(isset($_POST['ok']))
{
if(filesize($f) <= 1048576)
{
$adres = $domain.'index.php?q=d&f='.$f;
move_uploaded_file($f['tmp_name'], 'pliki/'.$f['name']);
echo 'URL:
<input type="text" onClick="highlight(this);" value="'.$adres.'" style="width:400px;">';
echo '<form enctype="multipart/form-data" method="post" action="index.php">
<input type="submit" name="1" value="Pobierz"></form>';
if(isset($_POST['1']))
{
readfile('pliki/'.$f);
}
} else echo 'Plik jest za duży!';
}
?></div>
<div id="STOPKA"><b>&copy; Copyright by Slash 2010</b></div>
</div></center>
</body>
[/code] Mój kod:
[code]

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<title>Żall Mi Jej!</title>
<link rel="Stylesheet" type="text/css" href="styles/index.css" />
</head>
<body>
<div id="top" style="align: center;">
<div id="TRESC">
<form enctype="multipart/form-data" method="post" action="">
<input type="file" name="Filedata" /><br>
<input type="submit" name="ok"></form><br>
<?php if($_GET['q'] == 'f' && isset($_GET['f'])){ echo'<input type="text" onClick="highlight(this);" value="'.$adres.'" style="width:400px;"><br>
<input type="submit" name="1" value="Pobierz">'; ?>
</form>

<?php
$f = $_FILES['Filedata']['name'];
$domain = "http://slasheer.c0.pl/";

if(isset($_POST['ok']))
{
if(filesize($f) <= 1048576)
{
$adres = $domain . 'index.php?q=d&f=' . $f;
move_uploaded_file($f['tmp_name'], 'pliki/'.$f['name']);
} else {
echo 'Plik jest za duży!';
}
}

if(isset($_POST['1']))
{
readfile('pliki/'.$f);
}
?>
</div>
<div id="STOPKA"><b>&copy; Copyright by Slash 2010</b></div>
</div>
</body>
</html>

Powinien działać chociaż nie testowany.

PS Powinieneś zadbać o bezpieczeństwo bo mógłbym spokojnie zrobić Ci hacka ;)

Post przenoszę.

Pozdrawiam, Sim00n.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dzięki. Widzę że sporo zmieniłeś.

Fajnie by było jak byś mógł powiedzieć co zmieniłeś. ;D

Znasz jakąś stronkę z funkcjami?

Coś jest źle tutaj. W linijce 41

</html>

Wejdź na slasheer.c0.pl

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

<?php if($_GET['q'] == 'f' && isset($_GET['f'])){ echo'<input type="text" onClick="highlight(this);" value="'.$adres.'" style="width:400px;"><br>
					<input type="submit" name="1" value="Pobierz">'; ?>
Zmień na :
<?php
if($_GET['q'] == 'f' && isset($_GET['f']))
{
echo'<input type="text" onClick="highlight(this);" value="'.$adres.'" style="width:400px;"><br>
<input type="submit" name="1" value="Pobierz">'; 
}
?>

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

No tak, głupia literówka, możesz też zrobić tak:


<?php if($_GET['q'] == 'f' && isset($_GET['f'])){ echo'<input type="text" onClick="highlight(this);" value="'.$adres.'" style="width:400px;"><br>
<input type="submit" name="1" value="Pobierz">'; } ?>
[/code]

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Trzebabyło zmienić. :D Ja tam tylko tak na próbę robię to.

<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2"> 
		<title>Slasheer - Upload!</title>
		<link rel="Stylesheet" type="text/css" href="styles/index.css" />
	</head>
	<body><center>
		<div id="top">
			<div id="TRESC">
				<form enctype="multipart/form-data" method="post" action="">
					<input type="file" name="Filedata" /><br>
					<input type="submit" name="ok"></form><br>
				</form>
				<?php
					$f = $_FILES['Filedata']['name'];
					$domain = "http://slasheer.c0.pl/";

					if(isset($_POST['ok']))
					{
						if(filesize($f) <= 1048576)
						{
							$adres = $domain . 'pliki/' . $f;
							move_uploaded_file($f['tmp_name'], '/var/www/virtual/slasheer.c0.pl/pliki/'.$f['name']);
							echo 'Plik wgrany pomyślnie!';
						} else {
							echo 'Plik jest za duży!';
						}
					}
				?>
			</div>
			<div id="STOPKA"><b>&copy; Copyright by Slash 2010</b></div>
		</div></center>
	</body>
</html>

Zrobiłem tak i dalej nie działa... ;/ Nie wiem co jest nie tak. Nie ma plików na serwerze...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Cześć! Posiadam kod:

http://pastebin.com/n0F5SsYP

Mam z nim problem, bo chciałbym zrobić linijkę "char" aby się dodawało automatycznie id skinu, a nie cały czas to samo. Bo jak otworzy się przeglądarką , i wybierzesz płeć to wyskakują skiny, i chciałbym aby wybrany skin się dawał do "char" tak jak np. "Key" - się daje, to co wpiszesz... Ale Ubranie ma się dawać takie jakie się kliknie.

Proszę o pomoc.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Mały odkop, jednak myślę że będziesz w stanie to zrobić. Jestem świeży w PHP, pierwszy raz się w tym bawię i dzięki pomocy innych użytkowników, stworzyłem skrypt komentarzy na stronę. Jednakże on nie działa. Oto cały kod.

To co dałem nad <html>.

<?php
if (isset($_POST['submit'])) {
if (isset($_POST['message'])) {
if (isset($_COOKIE['dodano'])) {
echo "Już dodałeś komentarz! Spróbuj za chwilę.<br>";
} else {
$message = str_replace('www','*',$_POST['message']);
$message = ereg_replace("rnrn", "n<P>", $message);
$date=date("H:i d.m.Y");
$message = "<B>".$_POST['name']."</B><BR>".$date."<P>".$message."<BR><HR>";
$fp = fopen (basename($_SERVER['PHP_SELF']) . ".comment", "a");
fwrite ($fp, $message);
fclose ($fp);
setcookie ("dodano", "{$_POST['name']}", time()+300);
}
}
}
@readfile(basename(($_SERVER['PHP_SELF'] . ".comment")));
?>
To co dałem w <body>.
<form action="" method=post>
<input type=hidden name=submit value=1>
Nick:<br>
<input type=text name=name><br>
Wpisz komentarz:<br>
<textarea name=message rows="5" cols="65"></textarea><br>
<input type="image" src="obraz.png" alt="Wyślij komentarz"><br>
</form> 
Jednakże mam błąd w 15 linijce po wysłaniu komentarza.
Warning: Cannot modify header information - headers already sent by (output started at /home/delight/public_html/praca/koment.php:2) in /home/delight/public_html/praca/koment.php on line 15
Delight
08:37 05.03.2011

Treść testowa.

Komentarz się tworzy, jednak nie chcę aby był w tym miejscu co teraz (praca.delight.xaa.pl). Po odświeżeniu strony tworzą się nowe komentarze... co zrobić z tym fantem?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
<?php
ob_start();
if (isset($_POST['submit']))
{
    if (isset($_POST['message']))
    {
        if (isset($_COOKIE['dodano']))
        {
            echo "Już dodałeś komentarz! Spróbuj za chwilę.<br>";
        } else {
            $message = str_replace('www','*',$_POST['message']);
            $message = ereg_replace("rnrn", "n<P>", $message);
            $date=date("H:i d.m.Y");
            $message = "<B>".$_POST['name']."</B><BR>".$date."<P>".$message."<BR><HR>";
            $fp = fopen (basename($_SERVER['PHP_SELF']) . ".comment", "a");
            fwrite ($fp, $message);
            fclose ($fp);
            setcookie ("dodano", "{$_POST['name']}", time()+300);
        }
    }
}
@readfile(basename(($_SERVER['PHP_SELF'] . ".comment")));
ob_end_flush();
?>

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Slash, działa - jednakże po wysłaniu wiadomości cała strona idzie na lewą stronę i pojawia się error w linii 81.

            setcookie ("dodano", "{$_POST['name']}", time()+300);

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dobra, nie ważne - z tym sobie w końcu poradzę. A mógłbyś lub ktoś inny mi pomóc z tym, że jeśli nie wpisze się nicku, oraz treści wiadomości to nie pojawi się ona?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

A ja chciałbym się dowiedzieć, co robi funkcja

reload("jakaś wartość");

Jestem na 99%, że taka funkcja nie istnieje w PHP. Prawdopodobnie wyciąłeś ją z jakiegoś kodu, a sama funkcja jest definiowaną przez programistę w innym miejscu w kodzie.

@Delight: Ze względu na mój przeładowany plan zajęć, nie zaglądałem tu długo, ale cieszę się, że rozwiązałeś swój problem.

Pozdrawiam, Sim00n.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Witam,

Jestem zielony w php, czy mógłbyś napisać jak zrobić coś takiego że mam "strona1.php"(tu znajduje sie regulamin) i "strona2.php".

I gdy wejdziemy na "strona2.php" to wyskoczy "Jeszcze nie akceptowałeś regulaminu z "strona1.php"

A gdy na "strona1.php" to będzie regulamin do "strona2.php", i takie pole do naciśnięcia "Tak" i "Nie"

obrazek:

beztyt3232uu.png

I wystarczy wybrać "Tak" i wtedy bedzie można nacisnąć na button ktory przekieruje na "strona2.php" i na "strona2.php" "Dziękujemy za potwierdzenie regulaminu ;]"

Czy mógłby ktoś coś takiego zrobić ?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

strona1.php

<html>
	<head>
	</head>
	<body>
		Regulamin<br/>
		<form action='strona2.php' method='post'>
			<input type='radio' name='accept' value='tak' />Tak
			<input type='radio' name='accept' value='nie' checked='checked' />Nie<br/>
			<input type='submit' value='Ok' />
		</form>
	</body>
</html>
strona2.php
<?php
	session_start();
	if(isset($_POST['accept']) && $_POST['accept'] == 'tak')
		$_SESSION['accept'] = 1;
	if(!isset($_SESSION['accept']))
		header("Location: strona1.php");
?>
<html>
	<head>
	</head>
	<body>
		Tresc
	</body>
</html>

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Witam.Mam pytanko.Czy zmienną $_POST można w tej samej postaci w zapytaniu, czy trzeba użyć jakiś funkcji?Bo właśnie nie wychodzi mi odebranie i zapisanie zmiennej $_POST.Np mam pole login i hasło, a chciałbym żeby zapisało mi je w bazie danych mysql, jak to powinno wyglądać?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

No tak tylko, że właśnie jak tak daje to mi wyskakuje error, dokładnie:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in D:\strony\www\Moja strona\Gra\register.php on line 6

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×