Autor Zpráva
zarkan
Profil *
Zdravím vůbec nevím jak bych měl toto téma pojmenovat, stejně tak kam bych ho měl zařadit, takže se dopředu omlouvám.
Jedná se o to, že bych chtěl poradit s tím, že mám obyčejnej input, kam se napíše text a chtěl bych aby po stisknutí tlačítka input smazal a místo něj se zobrazil prostý text, který byl v inputu napsán a tlačítko se odstranilo.
Stano
Profil
<?php
if(isset($_POST["text"]) && !empty($_POST["text"])){
  echo htmlspecialchars(trim($_POST["text"]));
  }
else{
  ?>
  <form method="post">
  <input type="text" name="text">
  <input type="submit" value="zobraz">
  </form>
  <?php
  }
?>
zarkan
Profil *
Stano:
Je díky, ale potřeboval bych, aby to tam bylo i po aktualizaci stránky a ne znovu ten input a tlačítko.
l564
Profil
Já bych udělal když bude onKeyUp tak aby to uložilo do SESSIONS a při aktualizaci by to ze SESSIONS načetlo
Stano
Profil
zarkan:
ale to nedáva zmysel čo chceš. lebo nieje problém to spraviť tak aby tam ten input bol iba raz (kým prvý krát neodošleš text). ale vtom prípade je omnoho jednoduchšie si to raz napísať priamo do html a budeš mať pokoj.

tebe asi ide o pridávanie článkov na stránku. no a to už potrebuje trocha širšie riešenie. vyriešiť prihlasovanie, ukladanie dát do databázy/súborov atd.

takže ak naozaj potrebuješ len jednorázové pridanie textu na stránku tak riešiť editovaním html. ak potrebuješ pridávať pravidelne novinky/články na stránku tak potom je tu viac riešení ako nato.

alebo chceš aby návštevník si napísal napr svoje meno a to meno sa mu tam potom bude zobrazovať kým neviem čo...
zarkan
Profil *
No uvedu příklad budu mít třeba 10 lidí kterých se zeptám jestli zítra někam přijdou a jestli ano, tak ať potvrdí svojí účast tím, že tam napíší svoje jméno. No a já bych tam chtěl mít teďka 10x pod sebou ten input type text a hnedka vedle toho vždycky ten subtim. No a prostě lidi se tam budou psát a když tam přijde třeba třetí člověk tak už tam budou dva napsaní a bude tam už jen 8 těch políček.
Stano
Profil
OK a trváš na tom že to chceš mať na stránke. Lebo presne na toto sa dá použiť http://www.google.com/google-d-s/spreadsheets/ len vytvoríš nový hárok napíšeš o čo sa jedná a potom to dáš s tými 10 ľudmi zdielať. okrem toho sa dá použiť aj FB.

na stránke by to mohlo vyzerať takto:
<?php
session_start();
$filename = 'text2.txt';
$handle = fopen($filename, "a+");
include($filename);

if(isset($_POST["text"]) && !empty($_POST["text"])){
  echo htmlspecialchars(trim($_POST["text"]))."<br>";
  fwrite($handle, htmlspecialchars(trim($_POST["text"]))."<br>");
  $_SESSION["submit"] = true;
  }
elseif(!isset($_SESSION["submit"])){
  ?>
  <form method="post">
  <input type="text" name="text">
  <input type="submit" value="zobraz">
  </form>
  <?php
  }
?>
zarkan
Profil *
A to jako když tam budu mit 10 tech imputu tak tam budu mit 10 txt souboru?
Stano
Profil
skús a uvidíš. alebo si prečítaj niečo o fopen a spol.
HajekJirka
Profil
zarkan:
A to jako když tam budu mit 10 tech imputu tak tam budu mit 10 txt souboru?
Ne jenom jeden.

Stano:
Nebude lepší místo session cookie? V tvém případě se formulář opět zobrazí, když se znovu otevře prohlížeč.
Stano
Profil
HajekJirka:
Svojím spôsobom hej. Ale napríklad ak by sa chceli registrovať dvaja ľudia z toho istého pc tak im stačí "len" vypnúť browser. Samozrejme že toto riešenie nieje dobré, ale dá sa na ňom stavať. Podla mňa je hlúposť schovávať input na prihlásenie po prihlásení. Ale to nieje moja vec.
zarkan
Profil *
HajekJirka:
A jak to může byt jen jeden když budu psat do každeho řádku něco jiného?
zarkan
Profil *
Stano:
tak nemusí se to schovat staci treba aby to co tam bylo napsany v tom iputu pak bylo value toho samotnyho imputu nebo proste nějak ....
trs
Profil *
Myslim, ze nejlepsi by bylo pouzit databazi.
petr 6
Profil
Myslím, že chce něco jako tohle, akorát to neumí popsat, a navrhuje trochu kostrbaté řešení.
zarkan
Profil
petr 6:
No jako je to pěkný, ale dá se říct že ne prostě bych to chtěl mít tak, že tam budu mít pod sebou řekněme jen 3 ty imputy a subtimy:
<input name="text1"><input type="submit"><br>
<input name="text2"><input type="submit"><br>
<input name="text3"><input type="submit">

No a když napíšu do toho prvního "Ahoj" a potvrdím to tím tlačítkem tak bych tam chtěl mít:
Ahoj<br>
<input name="text2"><input type="submit"><br>
<input name="text3"><input type="submit">
Stano
Profil
<?php
$pocet_ucastnikov = 10;
$file_name = "skuska.txt";

if(!file_exists($file_name)) {
  for($i = 0; $i < $pocet_ucastnikov; $i++){$ucastnici[$i] = "";}
  $handle = fopen($file_name,"w+");
  fwrite($handle, implode(";",$ucastnici));
  }

if(isset($_POST["mena"])){
  $handle = fopen($file_name,"w+");
  fwrite($handle, implode(";",$_POST["mena"]));
  }

$ucastnici = explode(";",file_get_contents($file_name));

$volnych_miest = 0;
foreach($ucastnici as $ucastnik){
  if(empty($ucastnik)) $volnych_miest++;
  }  

echo "Ostava $volnych_miest vonych miest<br> <table><form method=post>";
foreach($ucastnici as $poradie => $ucastnik){
  $poradie++;
  if(empty($ucastnik)){
    $type = "text";
    $submit = "<input type=submit value=uloz>";
    }
  else{
    $type = "hidden";
    $submit = "";
    }
  echo "<tr><td>$poradie.</td><td>$ucastnik<input type='$type' name='mena[]' value='$ucastnik' $disabled></td><td>$submit</td></tr>";
  }
echo "</form></table>";          
?>
zarkan
Profil
Stano:
O paráda tak to je hustýýýý - díky.
A kdybych chtěl aby tam nebylo jen to jméno, ale vedle ještě jeden ten input s dalším textem tak to bych chtěl už asi moc že?
petr 6
Profil
zarkan:
No jako je to pěkný, ale dá se říct že ne prostě bych to chtěl mít tak, že tam budu mít pod sebou řekněme jen 3 ty imputy a subtimy:
No a to je právě ten tvůj kostrbatý návrh řešení. Samozřejmě ta moje ukázka toho docílí umazáním jedno řádku v kódu, ale proč tam potřebuješ mít víc inputů? Každý se přece zúčastní jen jednou a kdyby se chtělo víc lidí napsat z jednoho otevřeného okna prohlížeče, tak to budou stejně muset dělat po jednom jak v tom tvém návrhu, tak v tom mém příkladu (to by se samozřejmě dalo změnit).

Mimochodem, imput a subtim nic neznamená, doropučuju dosdutovat pojmy.
zarkan
Profil
petr 6:
Tak chtěl bych to třeba nějak "graficky upravit" nebo třeba napsat před to jmeno ještě něco .... prostě aby to vypadalo např. takto:
<table align=center cellspacing=1 cellpadding=1>
<tr><td colspan=5><center>Kdo si se mnou bude povídat?
<tr align=center><td>Můžu v</td><td>Jméno</td><td>O čem?</td><td>Věk</td>

<tr bgcolor=lightgrey>
<td width=100 align=center>10:00 - 10:09</td>
<td width=150 align=center><input name="jmeno1" maxlength=30></td>
<td width=150 align=center><input name="o_cem1" maxlength=30></td>
<td align=center><select name="vek">
<option value="00-25 let">10-25 let
<option value="25-50 let">25-50 let
<option value="50-99 let">50-99 let</td>
<td><input type="submit">

<tr bgcolor=#EBEBEB>
<td width=100 align=center>10:10 - 10:19</td>
<td width=150 align=center><input name="jmeno2" maxlength=30></td>
<td width=150 align=center><input name="o_cem2" maxlength=30></td>
<td align=center><select name="vek">
<option value="00-25 let">10-25 let
<option value="25-50 let">25-50 let
<option value="50-99 let">50-99 let</td>
<td><input type="submit">

<tr bgcolor=lightgrey>
<td width=100 align=center>10:20 - 10:29</td>
<td width=150 align=center><input name="jmeno3" maxlength=30></td>
<td width=150 align=center><input name="o_cem3" maxlength=30></td>
<td align=center><select name="vek">
<option value="00-25 let">10-25 let
<option value="25-50 let">25-50 let
<option value="50-99 let">50-99 let</td>
<td><input type="submit">

<tr bgcolor=#EBEBEB>
<td width=100 align=center>10:30 - 10:39</td>
<td width=150 align=center><input name="jmeno4" maxlength=30></td>
<td width=150 align=center><input name="o_cem4" maxlength=30></td>
<td align=center><select name="vek">
<option value="00-25 let">10-25 let
<option value="25-50 let">25-50 let
<option value="50-99 let">50-99 let</td>
<td><input type="submit">

<tr bgcolor=lightgrey>
<td width=100 align=center>10:40 - 10:49</td>
<td width=150 align=center><input name="jmeno5" maxlength=30></td>
<td width=150 align=center><input name="o_cem5" maxlength=30></td>
<td align=center><select name="vek">
<option value="00-25 let">10-25 let
<option value="25-50 let">25-50 let
<option value="50-99 let">50-99 let</td>
<td><input type="submit">

<tr bgcolor=#EBEBEB>
<td width=100 align=center>10:50 - 10:59</td>
<td width=150 align=center><input name="jmeno6" maxlength=30></td>
<td width=150 align=center><input name="o_cem6" maxlength=30></td>
<td align=center><select name="vek">
<option value="00-25 let">10-25 let
<option value="25-50 let">25-50 let
<option value="50-99 let">50-99 let</td>
<td><input type="submit">
zarkan
Profil
[#17] Stano
Dal by se místo toho "ucastnik" (tzn. 1., 2., 3., ... , 10.) napsat libovolnej text?

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0