Autor Zpráva
QGAnna
Profil
Dobrý den,
mám problém. Toto nefunguje, nemění to nic:
<form><select name="co">
<option>nazev</option>
<option>url</option>
<option>jmeno</option></select>
<input name="jak">
<input name="checker" type="checkbox">
<input type="submit" value="OK"></form>
<? if($checker==on){$spojeni = mysql_connect("mysql.webzdarma.cz","xxxxxx","xxxx" );
mysql_select_db("xxxxx", $spojeni);
$vysledek = mysql_query('UPDATE `bludistelevel` SET $co = $jak WHERE id = $id LIMIT 1'); echo 'OK send';} ?>

Tady to je. Tady je výpis z databáze. Nějáká hloupá chyba? Kde prosím? Tak jestli tam něco je tak to prosím napište. Děkuji.
Keeehi
Profil
$vysledek = mysql_query("UPDATE `bludistelevel` SET $co = $jak WHERE id = $id LIMIT 1");
Uvozovky, ale to snad víš, tak si dej na to příště pozor.

Doufám, že to není celý kód, že se někde před ním ještě vyskytuje něco jako $co=$_GET["co"] + ošetření vstupu
QGAnna
Profil
Keeehi:
Uvozovky, ale to snad víš, tak si dej na to příště pozor.
No ono to právě nefunguje i s tímhlema.
EDIT: Proměné tam jsou, ošetření vstupu tam není, protože to je jenom pro mě.
Alphard
Profil
Máte definovanou konstantu on? Máte aktivní short open tags a register globals? Jaké chyby se vypisují? Proč nám se posíláte tak dlouhý řádek (je to nepřehledné)? Co píše mysql_error()? Jak vypadá sestavený dotaz?

Ty uvovzovky jsou správná rada, v apostrofech to fungovat nemůže.
Keeehi
Profil
if($checker=="on")
Nejsem si však jist, jestli checkbox odesílá při zaškrtnutí "on"

Neodpověděla jste, jestli se někde před tímto kódem vyskytuje $co=$_GET["co"]; (+ další hodnoty předávané z formuláře). Pokud to tam nemáte, tak při register globals OFF (což předpokládám že asi vypnuté je), to takto fungovat nebude.
QGAnna
Profil
Alphard:
Máte definovanou konstantu on? Máte aktivní short open tags a register globals?
Hmm tak toto moc nechápu.

Jaké chyby se vypisují?
Pokut to je mysql error pak, Unknown column 'něco' in 'field list'.

Proč nám se posíláte tak dlouhý řádek (je to nepřehledné)?
Promiňte, opravím to.

Keeehi:
Nejsem si však jist, jestli checkbox odesílá při zaškrtnutí "on"
Mě odesílá.

Neodpověděla jste, jestli se někde před tímto kódem vyskytuje $co=$_GET["co"]; (+ další hodnoty předávané z formuláře).
Ano, mám to tam.

Mimochodem teď asi nečekejte mou odpověď. Už jsem docela ospalá. ;-)
Keeehi
Profil
QGAnna:
Unknown column 'něco' in 'field list'.
Je to prosté v tabulce bludistelevel se sloupec s názvem něco nenalézá. Netuším, jak se řetězec něco dostal do proměnné $co, protože ve formuláři není.

V tagu option vám chybí value. http://www.jakpsatweb.cz/html/formulare.html#select
Alphard
Profil
QGAnna:
Hmm tak toto moc nechápu.
Už to naznačil [#5] Keeehi, když řetězec neobalíte jako řetězec a zároveň to není nějaké klíčové slovo, považuje se za konstantu.

Pokut to je mysql error pak, Unknown column 'něco' in 'field list'.
To je zcela zásadní, přelažila jste si to? Neexistuje sloupec 'něco', asi je jasné, jak to řešit.

Proč nám se posíláte tak dlouhý řádek (je to nepřehledné)?
Promiňte, opravím to.
Mohl jsem to udělat také, ale chtěl jsem, abyste o tom přemýšlela. :-) Nezdá se vám to nepřehledné? Jak by se ten kód líbil takhle?
<form>
  <select name="co">
    <option>nazev</option>
    <option>url</option>
    <option>jmeno</option>
  </select>
  
  <input name="jak">
  <input name="checker" type="checkbox">
  <input type="submit" value="OK">
</form>
<?php
if($_GET['checker'] == 'on')
{
  $spojeni = mysql_connect("mysql.webzdarma.cz","xxxxxx","xxxx");
  mysql_select_db("xxxxx", $spojeni);
  $vysledek = mysql_query("UPDATE `bludistelevel` SET $co = $jak WHERE id = $id LIMIT 1");
  echo 'OK send';
}
?>
QGAnna
Profil
Děkuji, už mi to funguje.

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: