Autor Zpráva
Andrew19
Profil
Dobrý den potřeboval bych udělat změnu v databázi pomací php ale když to celé proběhne tak se mi aktualizují všechny řádky a né jenom ten jeden kde je chyba?

výpisový soubor :

$spojeni = mysql_connect("","","");
mysql_select_db('', $spojeni);
mysql_query("SET NAMES 'cp1250';");

$vysledek=mysql_query("select * from skripta ORDER BY nazev ");
while ($zaznam=mysql_fetch_array($vysledek) ):
echo "<table width=600 border=0>";
echo "<tr>";
echo "<td width=250><a href='upravitskripta.php?id=".$zaznam["id"]."'>".$zaznam["nazev"]."</a ></td>";
echo "<td width=250>".$zaznam["autor"]."</td>";
echo "<td width=50>".$zaznam["cena"]."</td>";
echo "</tr>";
echo "</table>";
endwhile;
?>


opravovací skript :


<?php
$spojeni = mysql_connect("","","");
mysql_select_db('', $spojeni);
mysql_query("SET NAMES 'cp1250';");
$id=$_GET['id'];
// ošetření $_GET['id']
$vysledek = mysql_query("select * from skripta where id = $id ");
while ($zaznam = mysql_fetch_array($vysledek)):
echo "<form id=\"form1\" action=\"upravaskript.php\">
<label><span class=\"styl8\">Název knihy (skripta)</span>
<input name=\"nazev\" type=\"text\" size=\"30\" maxlength=\"255\" value=".$zaznam["nazev"].">
</label>

.........


</form>";
endwhile;


upravovací skript :

<?
$spojeni = mysql_connect ("", "", "");
mysql_select_db('', $spojeni);
mysql_query("SET NAMES 'cp1250';");
$vysledek = mysql_query( "UPDATE skripta SET nazev = '$nazev', autor = '$autor', popis = '$popis', kategorie = '$kategorie', cena = '$cena', foto = '$foto' ", $spojeni)or die(mysql_error());
Header('Location: skriptaupraveno.php');
?>

kde je chyba?
Kajman_
Profil *
V update Vám chybí něco jako
where id=$predaneid
Andrew19
Profil
no teď to mám takhle :

$vysledek = mysql_query( "UPDATE skripta SET nazev = '$nazev', autor = '$autor', popis = '$popis', kategorie = '$kategorie', cena = '$cena', foto = '$foto' where id = '$id'", $spojeni)or die(mysql_error());

a projede mě to bez chyby ale bohužel se údaje nezmění kde je chyba?
Andrew19
Profil
A nejdivnější na tom je když provedu příkaz přímo v sql takto :

UPDATE skripta SET id='1',nazev='aaa',autor='aaa',popis='aaa',kategorie='Pedagogika',cena ='300',foto=''where id='1'

tak to funguje čím to může být?
Kajman_
Profil *
Možná proto, že v upravovacím skritpu nemáte
$id=$_GET['id'];
// ošetření $_GET['id']
Andrew19
Profil
no to tam právě mám ale jen jsem to sem nevypsal a taky to nejde opravdu už nevím co s tím?
MelkorNemesis
Profil *
nevsiml sem si, ze bys nekde predaval v <form id=\"form1\" action=\"upravaskript.php\"> promennou GETem..

<form id=\"form1\" action=\"upravaskript.php&ID=nazev_promenne_s_ID_z_DB\">
a az potom muzes davat do SQL dotazu $_GET['ID']

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: