UPDATE

$sql="UPDATE clenove SET ICQ='$ICQ' WHERE ID='$ID'";

if (!mysql_query($sql,$connection)) {
echo "neco nefunguje,změna neuložena !<BR>";
exit;
} else {
# insert OK inform user
echo "<H2><CENTER>změnili jste své osobní údaje!</CENTER></H2><BR>";
}


Tohle by melo fungovat a taky se to tak na venek tvari,ale v databazi se nic nezmeni,nechapu.

Nevite co delam spatne?
zkus naored vyechovat ID, at mas jistotu, ze tam skutecne je
<HTML>Sojkovec: vazne? nesmysl
no ja nevim ale MySQL rika kdyz u UPDATE nezadas podminku zmeni se VSECHNY radky tim padem by po tve rade musel vsechny udaje vkladat znova!

Libor:

if (!mysql_query($sql,$connection)) {

echo "tohle nefunguje: ".mysql_error().",změna neuložena !<BR>";
exit;
} else {
# insert OK inform user
echo "<H2><CENTER>změnili jste své osobní údaje!</CENTER></H2><BR>";
}</HTML>
Nesmysl? pokud by Id bylo prazdny, pak se nezmeni zadny zaznam, protoze podminka where id=NIC by nebyla ani na jednom zaznamu splnena, a ne na vsech
<HTML>porad mi to nedavalo smysl... az ted jsem zjistil ze jsi napsal "vyechovat" ne "vynechat" nebo "vynechavat" to potom jo</HTML>
jo to nebyl preklep, mel jsem na mysli echo() :-)
Ja to ID tam ale mam,proste if projede v pohode,napise ze je to O.K.(blabla) a v databazi se nic nezmeni a ID tam mam 100%,tak fakt nechapu,jedine ze bych mel neco nastaveneho v databazy,ale to pochybuju :-(

Nenapada vas jeste neco?
<HTML>ukaz veci cast scriptu</HTML>

Prvni cast nacte z databaze Nick a heslo a zobrazi informace o uzicateli


<?php
# loginpage.php
# common include file to MySQL
require("spojeni.php");


$valid=false;
# user has entered something
if (isset($PHP_AUTH_USER) && isset($PHP_AUTH_PW)) {

$sql="SELECT * FROM clenove WHERE Nick='$PHP_AUTH_USER' AND Heslo='$PHP_AUTH_PW'";


# strip away protection chars from previous form if sent back
function strip_it($str) {
$str=urldecode($str);
$str=stripslashes($str);
$str=htmlspecialchars($str);
return($str);
}



# run the query
$mysql_result=mysql_query($sql,$connection);
# supress any errors with @
$num_rows=@mysql_num_rows($mysql_result);
if ( $num_rows != 0 ) {
$valid=true;
}
} # if isset





if (!$valid) {
header("WWW-Authenticate: Basic realm=\"Hey! Restricted Directory\"");
header("HTTP/1.0 401 Unauthorised");
echo "<BR><BR>Sem mají přístup pouze členove clanu pro nastavování osobních údajů";
exit;
} else {

# OK validated
echo "<B><BR>Vítejte na osobním nastavení vašeho účtu v clanu Břez</B><BR><BR>";


{while ($row=mysql_fetch_array($mysql_result))



{
$Nick=$row["Nick"];
$ICQ=$row["ICQ"];
$Mail=$row["Mail"];
$Counterstrike=$row["Counterstrike"];
$Webgame=$row["Webgame"];
$Heslo=$row["Heslo"];
$Ocobe=$row["Osobe"];
$Funkce=$row["Funkce"];
$ID=$row["ID"];


echo "<TABLE ALIGN=\"CENTER\" BORDER=\"1\">";
echo "<TR><TH>Nick</TH><TH>ICQ</TH><TH>Mail</TH><TH>Counterstrike</TH><TH>Webgame</TH><TH>Funkce</TH></TR>";

echo "<TR><TD>$Nick</TD><TD>$ICQ</TD><TD>$Mail</TD><TD>$Counterstrike</TD><TD>$Webgame</TD><TD>$Funkce</TD></TR>";

echo "<FORM METHOD=GET ACTION=\"http://brez.wz.cz/zosobni.php\">";
$ICQ=strip_it($ICQ);
$Mail=strip_it($Mail);
$Counterstrike=strip_it($Counterstrike);
$Webgame=strip_it($Webgame);

echo "ICQ :   <INPUT TYPE=\"TEXT\" NAME=\"ICQ\" VALUE=\"$ICQ\"><BR><BR>";
echo "Mai :   <INPUT TYPE=\"TEXT\" NAME=\"Mail\" VALUE=\"$Mail\"><BR><BR>";
echo "CS :   <INPUT TYPE=\"TEXT\" NAME=\"Counterstrike\" VALUE=\"$Counterstrike\"><BR><BR>";
echo "WG :   <INPUT TYPE=\"TEXT\" NAME=\"Webgame\" VALUE=\"$Webgame\"><BR><BR>";

echo "<BR>";
echo "<INPUT TYPE=\"SUBMIT\" VALUE=\"Změnit !\"><BR><HR>";
echo "</FORM>";

}
}
}

mysql_close($connection);
?>



*
Tato druha cast nabidne zmenu hodnot


function protect_it($str) {
$str=stripslashes($str);
$str=urlencode($str);
return($str);
}



$sql="UPDATE clenove SET ICQ='$ICQ',Mail='$Mail',Counterstrike='$Counterstrike',Webgame='$Webgame' WHERE ID='$ID'";




if (!mysql_query($sql,$connection)) {
echo "neco neni v pořadku,záznam neuložen !<BR>";
exit;
} else {
# insert OK inform user
echo "<H2><CENTER>Změnili jste své osobní nastavení</CENTER></H2><BR>";
}
*

Tvari se to ze to funguje,napise to co ma,ze udaje byli zmeneny,ale nic se nezmeni,nechapu
echo mysql_affected_rows(); //co to vypíše
A nebo kontrola toho kam to chce psát, tedy 'SELECT * from clenove where ID='.$ID
Pokud první vypíše 1 (nebo víc) a to druhý po použití třeba mysql_num_rows vrátí číslo větší než 0, tak je chyba někde jinde.