Autor Zpráva
skrepyKOKO
Profil *
ahoj,vytvořil jsem si poštu,takovou uplně primitivní poštu kterou by dokázal každý,jenže mám tu problém při vytvoření pošty..
nechce mě to vzít session...
$jmeno = trim ( $_SESSION['jmeno'] );

jelikož jsem přihlášenej pomocí sessionu a abych to měl na každý stránce se mě nechce..nevíte jak bych to mohl jinač udělat aby se mě tam objevil přihlášení jméno?


celý ukládací php script pro poštu
<?php
  require_once('../../databaze.php');
  if (!OtevriDB())
    break;
  @$dbc = mysql_query("SELECT *, UNIX_TIMESTAMP(datum) as datumcas FROM uzivatele WHERE jmeno='{$_POST['jmeno']}'");
  if (!$dbc)
    echo "Problém s databází!\n";
  {
$jmeno = $_SESSION['jmeno'];
$komu = $_POST['jmeno'];
$predmet = trim ( $_POST['predmet'] );
$zprava = trim ( $_POST['zprava'] );
$ok = true; 

if($ok) {
  @$vysledek = mysql_query("INSERT INTO posta (datum, jmeno, predmet, komu, zprava) ".
  "VALUES (CURRENT_TIMESTAMP(),'". $jmeno ."', '". $predmet ."', '". $komu ."', '". $zprava ."')");
echo "<b>Příspěvek vložen.</b>";
  }
  mysql_close();
} while (false);
?>
skrepyKOKO
Profil *
ah..prominte za span..už jsem to vyřešil..problém byl jinde:)
mno,když jsem to už založil,tak stejně sem napíšu něco co nemůžu nějak udělat...
u tý pošty,mám seznam uživatelu v rozevíracím seznamu...
			<tr>
				<td align="right"><font size="4">Komu:</font></td>
				<td align="left" width="360">
				<select size="1" name="jmeno">
				<option><?php echo $zaznam["jmeno"]; ?></option>
				</select></td>
			</tr>

jako obsah mám proměnnou která mě vytáhne všechny jména z tabulky uzivatele...
ono to jde,ale problém je v tom,že já to chci aby prostě ten seznam byl Rozevírací,a ne když přidám novýho uživatele tak aby se mě celej ten formulář zkopíroval a vypsal další jméno..prostě když se klikne na ten seznam tak aby tam vyjeli všechny uživatele...
pokud mě nepochopíte tak vám udělám asi testovací stránku,jelikož nevím jak bych to jinač vysvětlil..
skrepyKOKO
Profil *
vím,tohle už je asi spam,tak sorry:)
vyřešil jsem aby se to neopakovalo,jenže se mě ukáže jen jedno jméno a pak už nic...
<?php
require_once('../../databaze.php');
if (!OtevriDB()) $error = "Error database";

$vysledek = mysql_query("SELECT * FROM uzivatele ORDER BY id ");

if(!$vysledek) throw new Exception( mysql_error() );
while($zaznam=mysql_Fetch_array($vysledek))
{
$jmeno = $zaznam["jmeno"];
}
?>

<form method="POST" action="posta_posli.php">
	<div align="center">
		<table border="0" width="50%">
			<tr>
				<td align="right"><font size="4">Komu:</font></td>
				<td align="left" width="360">
				<select size="1" name="jmeno">
				<option><?php echo $jmeno; ?></option>
				</select></td>
			</tr>
			<tr>
				<td align="right"><font size="4">Předmět:</font></td>
				<td align="left" width="360">
				<input type="text" name="predmet" size="34" style="border: 1px solid #000000"></td>
			</tr>
			<tr>
				<td align="right"><font size="4"><span title="Povinný údaj!">Zpráva:</span></font></td>
				<td align="left" width="360">
				<textarea rows="4" name="zprava" cols="40" style="border: 1px solid #000000"></textarea></td>
			</tr>
		</table>
	</div>
	<p align="center"><input type="submit" value="Odeslat" name="submit"><input type="reset" value="Obnovit" name="reset"></p>
</form>
skrepyKOKO
Profil *
nevíte někdo?..proč se mě tam zobrazí jen jeden uživatel a přitom tom jich tam mám 6?
podle mě ten php kod je v pořádku,chyba bude asi v html
Tori
Profil
skrepyKOKO:
Na ř.10 si stále dokola přepisujete obsah proměnné. Použijte pole (jako indexy můžou být ID uživatelů, chcete-li je pak použít), a na ř.21 ho potom projděte (např. foreach) a z každé položky udělejte <option>.
Jinak z DB stačí číst jména (a případně ID) uživatelů, "SELECT *" je zbytečné když nepotřebujete všechny sloupce.
Joker
Profil
skrepyKOKO:
vím,tohle už je asi spam,tak sorry:)
A korunuje to to „nevíte někdo?
Tohle není chat ale diskuse, tady je záhodno nejdřív přemýšlet a teprve potom poslat další příspěvek.

Registrovaní uživatelé mohou své příspěvky editovat.
Jinak „nakopávací“ příspěvky („nevíte někdo?“) jsou moderátory obvykle likvidovány.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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

0