Autor Zpráva
kesaj
Profil
Zdravím Vás.

Mám problém, snažím sa posielať cez formulár IP adresu.

Problém je, že mám z viacerých dôvodov formulár vnorený do PHP cez echo:

Mám tam input type hidden cez ktorý by som chcel cez formulár posielať IP adresu:

<input type="hidden" name="ipadresa" value="$_SERVER['REMOTE_ADDR']" />

keď si ale formulár načítam, tak mi vypíše:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /data/web/virtuals/xxxxxxx/formular.php on line 52

čo je riadok s input type, ktorý som posielal vyššie.

ako mám prosím Vás upraviť ten záznam?

Ďakujem pekne za odpoveď.
Tomáš123
Profil
kesaj:
expecting ',' or ';'
Chýba ti tam čiarka(,) alebo bodkočiarka (;).
Jedná sa o chýbajúcu bodkočiarku(;) za ukončovacou hranatou zátvorkou.
kesaj
Profil
to znamená, že zápis má vyzerať takto?

<input type="hidden" name="ipadresa" value="$_SERVER['REMOTE_ADDR'];" />

lebo, keď to zapíšem takto, tak aj tak to tam píše ...
Tomáš123
Profil
kesaj:
Skús to takto:
<input type="hidden" name="ipadresa" value="<?php $_SERVER['REMOTE_ADDR'];?>" />
kesaj
Profil
žiaľ, to isté :( nerozumiem tomu ... keď tam dám namiesto ' ' " " - tak to prejde, ale to je asi nesprávny zápis pre REMOTE_ADDR lebo potom nefunguje výpis IP
yFang
Profil
kesaj:
Trochu odbočím, ale proč tu adresu nepřidáš až při zpracování formuláře? Takhle si ji může každý při vyplňování změnit na co ho napadne.
tazatel
Profil *
<input type="hidden" name="ipadresa" value="<?php echo $_SERVER['REMOTE_ADDR'];?>">

Ale zamyslel bych se nad tím, co píše yFang.
kesaj
Profil
tazatel:
Nejde ani tak : vypisuje to isté.

yFang:
ako to myslíš? ja ju potrebujem odoslať cez formulár, lebo ten následne zapisujem do databázy mysql. Teraz to mám v tomto poradí:

<input type="hidden" name="ipadresa" value="<?php echo $_SERVER['REMOTE_ADDR'];?>">
                                
                <input class="form-btn" name="odoslat" type="submit" value="Spusti prehrávanie" />    
Kubo2
Profil
kesaj:
ja ju potrebujem odoslať cez formulár, lebo ten následne zapisujem do databázy mysql.
Fyzicky ten formulár (celý jeho HTML kód) zapisuješ do databázy? Predpokladám, že nie. Ukáž nám teda prosím, AKO ho do tej databázy zapisuješ.
(Mám taký pocit, že máš trochu zmätok v terminológii.)
kesaj
Profil
Kubo2:

OK, takže tu je formulár :

<form action="/zapad" method="post" class="contact-form frame tbar">
                <h3 style="text-align:center;">Vyplňte formulár, aby ste mohli spustiť prehrávanie</h3>
                
                <label for="meno">Meno <span>(povinné)</span></label>
                <input type="text" name="meno" class="form-input" required />
                
                <label for="priezvisko">Priezvisko <span>(povinné)</span></label>
                <input type="text" name="priezvisko" class="form-input" required />
                
                <label for="Počet počúvajúcich">Počet počúvajúcich <span>(povinné)</span></label>
                <input type="number" name="pocet" class="form-input" required />
                
                <input type="hidden" name="ipadresa" value="<?php echo $_SERVER['REMOTE_ADDR'];?>">
                                
                <input class="form-btn" name="odoslat" type="submit" value="Spusti prehrávanie" />        
            </form>

a takto zapisujem do databázy :

$sql = mysql_query("INSERT INTO xxx (meno,priezvisko,pocet,ipadresa)  VALUES('$meno','$priezvisko','$pocet','$ipadresa')");

no a samozrejme mám pripojený connect do databázy cez :

require_once("mysql.php");
yFang
Profil
kesaj:
A proč tedy před tím zápisem neuděláš:
$ipadresa = $_SERVER['REMOTE_ADDR'];
kesaj
Profil
yFang:

Ďakujem. Naozaj to funguje tak ako píšeš :)

Vďaka za pomoc.

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: