Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
PHP jako value
#1
Cytat:The sky is falling, I don't care
I just want to feel good!
Her train's leaving, she don't care
She just wants to feel good!
The World is dying, we don't care
They just want to feel good!
It's all over, we don't care
We just want to feel good!
Odpowiedz
#2
no to sobie popraw !!! Gdzieś problem jest z apostrofami lub cudzysłowiami. Najlepiej pokaż to echo w którym wyświetlasz to.
Cytat:Wyrazić to co czuję , zabrakło by tyle słów....
Odpowiedz
#3
Kod:
<?php session_start();?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <title>test</title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<div id="main">
<?php
if (empty($_POST) && isset($_GET['action'])) {
        $action = $_GET['action'];
        switch ($action) {
            case 'logout':
                session_unset();
                session_destroy();
                break;
    }
}
if (!isset($_SESSION['user'])) {
    $user = '';
    $pass = '';
    if (isset($_POST['login'])) {
        $user = strtolower(trim($_POST['user']));
        $pass = $_POST['pass'];
        $errors = array();
        if ($user == '' || $user != 'admin') {
            $errors['user'] = '';
        }
        if ($pass == '' || $pass != '123456') {
            $errors['pass'] = '';
        }
        if (empty($errors)) {
            $_SESSION['user'] = $user;
        } else {
            echo '<p class="error">Please fill in your correct ';
            if (isset($errors['user']))
                echo 'username';
            if (count($errors) == 2)
                echo ' and ';
            if (isset($errors['pass']))
                echo 'password';
            echo '.</p>', "\n";
        }
    }
}
if (isset($_SESSION['user'])) {
    $user = $_SESSION['user'];
?>
<div id="headertext">
    <p class="l">You are logged in as <strong><?php echo $user?></strong>.</p>
    <p class="r"><a href="?action=logout">Logout</a></p>
</div>
<?php
    if (isset($_POST['edit'])) {
        if (file_put_contents('../index.php', $_POST['homecontent']))
            echo '<p class="succes">Your changes are saved.</p>', "\n";
    }
    $homecontent = file_get_contents('../index.php');
?>
<form method="post" action="">
    <p>Here you can edit your homepage text:</p>
    <textarea name="homecontent" id="homecontent" rows="20" cols="55"><?php echo $homecontent?></textarea>
    <p><button type="submit" name="edit">Save changes</button></p>
    <button onclick="document.getElementById('homecontent').value='<?PHP include(\'strony/gora.txt\');?>';">DOdaj</button>
?>
</form>
<?php } else {?>

<form method="post" action="" id="login">
    <p>
        <label for="user">Username:</label><input type="text" name="user" id="user" value="<?php echo $user?>" />
    </p>
    <p>
        <label for="pass">Password:</label><input type="password" name="pass" id="pass" value="<?php echo $pass?>" />
    </p>
    <p>
        <button type="submit" name="login">Login</button>
    </p>
</form>
<?php }?>
</div>
</body>
</html>

Proszę, cała strona... nie mam pojęcia co jest źle, bo w PHP się prawie wcale nie orientuję :/
Cytat:The sky is falling, I don't care
I just want to feel good!
Her train's leaving, she don't care
She just wants to feel good!
The World is dying, we don't care
They just want to feel good!
It's all over, we don't care
We just want to feel good!
Odpowiedz
#4
w linijce owej w której występuję błąd zastosuj encje Smile Nie wiem czemu ale one się tutaj parsuja na tym forum i dlatego niestety to Ci nie mogę pokazać.
<a href="#" onclick="document.getElementById('homecontent').value='&lt;?php include(\'strony/gora.txt\');?&gt;';">Wstaw tekst</a>

o bez podświetlania skłądni działają encje. Ten link zamiast tamtego buttona. ALe oczywiście Kartofelek się wypowie no ale cóż Smile Nie wiadomo co mu nie pasuje skoro na swoim cudownym kursie pokazuje to samo Wink))
Cytat:Wyrazić to co czuję , zabrakło by tyle słów....
Odpowiedz
#5
Jest już prawie idealnieSmile Wielkie dziękiSmile muszę jeszcze jakoś dodać "stripslashes" do tego, ale nie bardzo mi wychodzi :/
Cytat:The sky is falling, I don't care
I just want to feel good!
Her train's leaving, she don't care
She just wants to feel good!
The World is dying, we don't care
They just want to feel good!
It's all over, we don't care
We just want to feel good!
Odpowiedz
#6
Dla twojego kodu:
Kod PHP:
$slash =$_POST['homecontent'];
if (
file_put_contents('../index.php',$slash)) 
Podczas zapisywania czegoś do bazy danych jeżeli przejmujesz to od kogoś dodajesz addslashes
Kod PHP:
$homecontent stripslashes(file_get_contents('../index.php')); 
Podczas wyswietlania ich np. gdzieś na stronie po prostu je wycinasz. Jednak nie jest to najlepsza ochrona Smile
Poczytaj o zabezpieczaniu formularzy.
Cytat:Wyrazić to co czuję , zabrakło by tyle słów....
Odpowiedz
#7
Hmm. w tej chwili chodziło mi o inny plik... plik, który wyświetla to co zapisałem w homecontent... do homecontent wstawia się to include i zapisuje do pliku index.php. I chciałbym żeby już w index.php skrypt się wykonywał. Mam nadzieję że dobrze wytłumaczyłemSmile

Poczytam poczytamSmile
Cytat:The sky is falling, I don't care
I just want to feel good!
Her train's leaving, she don't care
She just wants to feel good!
The World is dying, we don't care
They just want to feel good!
It's all over, we don't care
We just want to feel good!
Odpowiedz
#8
Takich cudów nie widziałem jeszcze szczerze mówiąc Smile Chodzi Ci o to , że np. tą funkcję która napisałeś do zapisywania do pliku to taki mini panel administracyjny ? I on np jest w pliku admin/index.php ? Następnie to co zapisałeś w pliku ../index.php czyli w głównym katalogu to ma być się w nim wyświetlać tak ? Reasumując...

- Panel admina zapisywanie ( polecenia które includuje następny plik ) do pliku w głównym katalogu index.php
- Wyświetlanie w index.php szablonu i divie homecontent ma się wyświetlić ten includowany plik ?

Szczerze mówiąc to jest lekko pokręcone. Nie łatwiej zrobić np. pomijam , że to zrobić na bazie danych ale że tworzysz sobie różne pliki tekstowe z treścią poprzez ten panel administracyjny. Następnie w głównym katalogu index.php poprostu przechwytujesz np. zmienną $_GET parametr jaka to ma być strona np.
strona.php?str=onas i dołącza plik strony/onas.php do homecontent ? To takie prymitywne rozwiązanie no ale tylko daję przykład. Bo łatwiej zrobić to na bazie danych.
Cytat:Wyrazić to co czuję , zabrakło by tyle słów....
Odpowiedz
#9
Tylko, że właśnie mi zależy na tym aby nie było bazy danych :/. Więc moje pytanie brzmi:

Jak dodać stripslashes do tego:
<?php include(\'strony/goraa.txt\');?>

Edit: może w javascript?
Cytat:The sky is falling, I don't care
I just want to feel good!
Her train's leaving, she don't care
She just wants to feel good!
The World is dying, we don't care
They just want to feel good!
It's all over, we don't care
We just want to feel good!
Odpowiedz
#10
do include się nie da dodać bo gdy go np chcemy przypisać do zmiennej
Kod PHP:
$zm = include('plik.php'); 
to ta zmienna zwraca 1 jeżeli include znalazl tą zmienną. Musiałbyś to zapisywać jako np.
Kod PHP:
<?php
echo  stripslashes(file_get_contents('cos.php'));
?>

Tylko też to nie jest dobre rozwiązanie Smile I wcale nie chodzi o to że nie korzystasz z baz danych.
Cytat:Wyrazić to co czuję , zabrakło by tyle słów....
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Czy ilość zmiennych w javascript, jako języku interpretowanym, ma znaczenie? Jakie gburhiphop 22 22,652 09-09-2016, 21:09
Ostatni post: Ribana
  Flash jako link ładujący stronę do diva w4wer 1 2,887 12-03-2012, 16:16
Ostatni post: Kartofelek
  [CSS][HTML] Tablica informacyjna jako menu asta 2 2,591 22-11-2011, 13:01
Ostatni post: sunpietro
  Video jako background didi0072 3 3,338 21-08-2011, 17:02
Ostatni post: Kartofelek
  [xHTML][PHP] Zmienna jako szerokość Rodney 3 2,982 28-06-2011, 19:30
Ostatni post: Pedro84

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl