Diskuze: Změna textu - PHP

PHP PHP Změna textu - PHP American English version English version

Avatar
hornik34
Člen
Avatar
hornik34:

mám za cíl vytvořit html/php stránku, kde nebude nic.. jenom uprostřed nahoře budou dva nadpisy a pod tím budou tam 3 Textové pole a vedle tlačítka odeslat a po vyplnění jakéhokoliv textu do textového pole..(kolečko 1) se to napíše místo nadpisu.(kolečko 2) ..první textové pole bude měnit nadpis 1 a druhé nadpis 2 ..Jak to mám provédst ?

 
Odpovědět 4. června 14:01
Avatar
VitekST
Člen
Avatar
VitekST:

No, nepochopil si, jak PHP funguje.

PHP běží na serveru, tudíž ten HTML kód generuje na serveru, a pak ho pošle klientovi.
Stránka se ale renderuje u klienta, kam server nemá logicky přístup, tudíž s pomocí PHP nemůžeš přímo upravovat obsah té stránky, jakmile ji odešleš ke klientovi.

Tudíž úpravy musíš provádět pomocí nějaké rutiny, která běží u klienta.

Stránku můžeš skriptovat JavaScriptem (a upravovat její obsah), a JavaScript podporuje technologii, které se říká AJAX. Prakticky se jedná o HTTP požadavek spuštěný na pozadí JavaScriptovým kódem, který můžeš všelijak ovládat a dokonce získat i odpověď serveru.

Následně stačí takový požadavek vybudovat, odeslat, na serveru si udělat kód který ten požadavek odbaví a odešle odpověď, tu odpověď získat a následně podle ní zareagovat.

Více zde: http://www.w3schools.com/…ajax_php.asp
Doporučuji použít na skriptování vůbec jQuery: http://blog.teamtreehouse.com/…ent-with-php

 
Nahoru Odpovědět  +2 4. června 14:17
Avatar
VitekST
Člen
Avatar
VitekST:

//EDIT: Pokud bys to chtěl "hezky česky", jukni zde na ITNetwork, má zde spoustu materiálů vůbec.
http://www.itnetwork.cz/javascript/ajax

 
Nahoru Odpovědět 4. června 14:22
Avatar
hornik34
Člen
Avatar
hornik34:

Musí to jít udělat i jinak... upřímně řečeno..to, co jsem sem poslal je zadání úkolu co mám mít do úterka odevzdaný ve škole.. ano je mi to blbý nechat si vypracovat domácí úkol ale sám bych to dohromady ani omylem nedal..Javascript používat nesmíme.. teprv jsme u HTML/CSS/PHP

 
Nahoru Odpovědět 4. června 14:29
Avatar
VitekST
Člen
Avatar
Odpovídá na hornik34
VitekST:

Jo, blbě jsem pochopil, jde ti jen o to uložit pár názvů a pak je zase získat.
Běžně se používá databáze, de facto standardem je MySQL, více zde: http://www.w3schools.com/…ql_intro.asp

Jen prosím používej PDO, ne MySQLi, PDO je mnohem modernější a přívětivější způsob přístupu k databázi.

 
Nahoru Odpovědět 4. června 14:41
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Odpovídá na VitekST
Adam Ježek:

Databáze je tady atomovka na komára, když může použít plácačku. Hodnotu si ulož do texťáku(http://php.net/…contents.php) a při tvoření stránky do nadpisu dosadíš to, co z toho texťáku zase přečteš. (http://www.w3schools.com/…ile_open.asp)

Editováno 4. června 15:02
Nahoru Odpovědět  +2 4. června 15:00
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
hornik34
Člen
Avatar
hornik34:

Jo... to je přesně to, co potřebuju... zní to celkem logicky... obejde se tím vše složité (javascript, databáze) a pracuje se jenom s uložením hodnoty do něčeho a pak načtením na místě, kde je to potřeba.. otázka už je jenom jak to poskládat aby to bylo funkčí...zatím jsem jen u toho, že mám napsanej html , kde mám rozložený ty tlačítka a nadpisy....

<!DOCTYPE HTML PUBLIC "-W3CDTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title></title>
</head>
<body>

<div id="banner">
</div>

<style>

#banner {
background:

#7fffd4 }

</style>

<div id="stranky">
<ul type="button" class="menu">
<li><div class="tl"> Strana 1 </div></li>
</ul>
<ul type="button" class="menu">
<li><div class="tl"> Strana 2 </div></li>
</ul>
<ul type="button" class="menu">
<li><div class="tl"> Strana 3 </div></li>
</ul>

</div>

<div id="formstr">
<form method="GET">
Pozadí stran: <input type="text" name="barva2">
<input size=8 type="submit" name="nazev2">

</form>
</div>

<style>

.tl {
background:

white }

</style>

<div id="formstr">
<form method="GET">
Pozadí banneru: <input type="text" name="barva1">
<input size=8 type="submit" name="nazev1">

</form>
</div>

<style>
#banner {
background:

#7fffd4 }

</style>

</div>

</head>
<body>

<div id="pozadi">
<form method="GET">
Změn Pozadí: <input size=8 type="text" name="barva3">
<input size=8 font-size=14 type="submit" name="nazev3">

<style>

#pozadi {
background:

}

</style>

<form method="GET">

<p>
Název strany 1: <input size=8 type="text" name="str1">
<input size=8 font-size=14 type="submit" name="stranka1">

</p>
<p>
Název strany 2: <input size=8 type="text" name="str2">
<input size=8 font-size=14 type="submit" name="stranka2">

</p>
<p>
Název strany 3: <input size=8 type="text" name="str3">
<input size=8 font-size=14 type="submit" name="stranka3">

</p>
</form>



</form>
</div>
<style>
#pozadi {
text-align: center;
font-size: 17px;
width:600px;
height: 200px;
margin:35px auto;
}
</style>

<style>
#banner {
border: 8px solid black;
border-radius: 15px;
width: 650px;
height: 100px;
border-style:solid;
margin:45px auto;
text-align: center;

}
</style>

<style>
#formstr {
text-align: center;
font-size: 17px;
width: 400px;
height: 30px;
margin:0px auto;

}
</style>

<style>
.tl{
float:center;
width:100px;
height:34px
font-size: 17px;
color: purple;
line-height: 1.8;
font-family: arial;
font-style: italic;
padding-top:3px;
border-style: outset;
border-radius: 50px / 20px;
text-align: center;
}
</style>

<style>
.menu{
text-align: center;
list-style-type: none;
float:left;
margin-top:35px;
height:40px;
margin:0px auto;
}
</style>

<style>
#stranky {
width: 600px;
height: 50px;
margin:10px auto;
text-align: center;
}
</style>

</body>
</html>

 
Nahoru Odpovědět 4. června 15:15
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Odpovídá na hornik34
Adam Ježek:

Kód vkládej jako kód, druhé tlačítko zleva vedle smajlíka

Nahoru Odpovědět  +1 4. června 15:20
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
hornik34
Člen
Avatar
hornik34:

Dobře..nevěděl jsem to.... pro příště ho vložím, jak říkáš...,zpětně už to asi nejde vložit jako kód..

 
Nahoru Odpovědět 4. června 15:24
Avatar
Jakub Žák
Člen
Avatar
Odpovídá na hornik34
Jakub Žák:

Máš určené, jak a kam se to má ukládat? Pokud ne a ten text tam má zůstat jen jednomu uživateli a ne napořád, tak bych asi místo databáze nebo souboru použil session.

 
Nahoru Odpovědět 4. června 15:26
Avatar
hornik34
Člen
Avatar
hornik34:

Určené to není.... a o session učitel něco říkal. to by se použít asi mohlo, ale to už vůbec netuším kam dát nebo jak to udělat...

 
Nahoru Odpovědět 4. června 15:29
Avatar
Jakub Žák
Člen
Avatar
Jakub Žák:

Tady máš ukázku se změnou barvy pozadí, zbytek už od toho odvodíš...

<?php
session_start();

if (!empty($_GET["barva2"])) {
    $_SESSION["barva2"] = $_GET["barva2"];
}

$barva2 = "white";

if (isset($_SESSION["barva2"])) {
    $barva2 = $_SESSION["barva2"];
}
?>


<!DOCTYPE HTML PUBLIC "-W3CDTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8">
        <meta name="generator" content="PSPad editor, www.pspad.com">
        <title>Titulek</title>

        <style>
            html {
                background-color: <?php echo $barva2; ?>;
            }

            #pozadi {
                text-align: center;
                font-size: 17px;
                width:600px;
                height: 200px;
                margin:35px auto;
            }

            #banner {
                border: 8px solid black;
                border-radius: 15px;
                width: 650px;
                height: 100px;
                border-style:solid;
                margin:45px auto;
                text-align: center;

            }

            #formstr {
                text-align: center;
                font-size: 17px;
                width: 400px;
                height: 30px;
                margin:0px auto;

            }

            .tl{
                float:center;
                width:100px;
                height:34px;
                font-size: 17px;
                color: purple;
                line-height: 1.8;
                font-family: arial;
                font-style: italic;
                padding-top:3px;
                border-style: outset;
                border-radius: 50px / 20px;
                text-align: center;
            }

            .menu{
                text-align: center;
                list-style-type: none;
                float:left;
                margin-top:35px;
                height:40px;
                margin:0px auto;
            }

            #stranky {
                width: 600px;
                height: 50px;
                margin:10px auto;
                text-align: center;
            }

            #banner {background:#7fffd4;}
            .tl {background:white;}
        </style>
    </head>
    <body>

        <div id="banner">
        </div>

        <div id="stranky">
            <ul type="button" class="menu">
                <li><div class="tl"> Strana 1 </div></li>
            </ul>
            <ul type="button" class="menu">
                <li><div class="tl"> Strana 2 </div></li>
            </ul>
            <ul type="button" class="menu">
                <li><div class="tl"> Strana 3 </div></li>
            </ul>
        </div>

        <div id="formstr">
            <form method="GET">
                <label for=barva2>Pozadí stran: </label><input type="text" name="barva2" value="<?php echo $barva2; ?>">
                <input type="submit" name="nazev2">
            </form>
        </div>

        <div id="formstr">
            <form method="GET">
                <label for=barva1>Pozadí banneru: </label><input type="text" name="barva1">
                <input type="submit" name="nazev1">
            </form>
        </div>

        <div id="pozadi">
            <form method="GET">
                Změn Pozadí: <input size=8 type="text" name="barva3">
                <input type="submit" name="nazev3">
                <p>
                    Název strany 1: <input size=8 type="text" name="str1">
                    <input type="submit" name="stranka1">
                </p>
                <p>
                    Název strany 2: <input size=8 type="text" name="str2">
                    <input type="submit" name="stranka2">
                </p>
                <p>
                    Název strany 3: <input size=8 type="text" name="str3">
                    <input type="submit" name="stranka3">
                </p>
            </form>
        </div>
    </body>
</html>
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 4. června 15:54
Avatar
hornik34
Člen
Avatar
hornik34:

Mockrát děkuju za pomoc :), už mi funguje vše, jak jsem chtěl. .....Jsem spokojen :), Přeji hezký den :)

 
Nahoru Odpovědět  +1 4. června 16:20
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 13 zpráv z 13.