Autor Zpráva
Pavvelka
Profil *
Potřeboval bych poradit, kde mám chybu? Když dám odeslat tak se nic nezmění.
<?php
$host="localhost"; // Host name 
$username="username"; // Mysql username 
$password="password"; // Mysql password 
$db_name=" Database"; // Database name 
$tbl_name="Table"; // Table name 

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

$sql="SELECT * FROM $tbl_name order by id desc limit 20";
$result=mysql_query($sql);

// Count table rows 
$count=mysql_num_rows($result);
?>
<table width="500" border="0" cellspacing="1" cellpadding="0">
<form name="form1" method="post" action="">
<tr> 
<td>
<table width="900" border="0" cellspacing="1" cellpadding="0">


<tr>
<td align="center"><strong>Id</strong></td>
<td align="center"><strong>title</strong></td>
<td align="center"><strong>Obrázek</strong></td>
<td align="center"><strong>Délka</strong></td>
</tr>
<?php
while($rows=mysql_fetch_array($result)){
?>
<tr>
<td align="center" width="30px"><? $id[]=$rows['id']; ?><? echo $rows['link_id']; ?></td>
<td align="center"><a href="<? echo $rows['url']; ?>" target="_blank"><? echo $rows['title']; ?></a></td>
<td align="center"><input name="img[]" type="text" id="img" value="<? echo $rows['img']; ?>"></td>
<td align="center"><input name="delka[]" type="text" id="delka" value="<? echo $rows['delka']; ?>"></td>
</tr>
<tr><td><div style="margin-top:5px;margin-bottom:5px;border-bottom:1px solid #DDDDDD;"></div></td>
<tr>
<?php
}
?>
<tr>
<td colspan="4" align="center"><input type="submit" name="Submit" value="Submit"></td>
</tr>
</table>
</td>
</tr>
</form>
</table>
<?php
// Check if button name "Submit" is active, do this 
if($Submit){
for($i=0;$i<$count;$i++){
$img[$i]=$_POST["img[]"];
$delka[$i]=$_POST["delka[]"];
$sql1="UPDATE $tbl_name SET img='$img[$i]', delka='$delka[$i]' WHERE id='$id[$i]'";
$result1=mysql_query($sql1);
}
}

if($result1){
header("location:update.php");
}
mysql_close();
?>
Taps
Profil
Pavvelka:
zkus menší upravu
<td align="center" width="30px"><input type="hidden" value="<? echo $rows['id']; ?>" name="id[]"><? echo $rows['link_id']; ?></td>
radas
Profil *
přehodil bych to, tohle bych dal na začatek scriptu
if($_POST["Submit"]){
for($i=0;$i<$count;$i++){
$img[$i]=$_POST["img[]"];
$delka[$i]=$_POST["delka[]"];
$sql1="UPDATE $tbl_name SET img='$img[$i]', delka='$delka[$i]' WHERE id='$id[$i]'";
$result1=mysql_query($sql1);
}
}


problem může byt v registr globals...
Pavvelka
Profil *
Taps:
Tam je jen překlep.


radas:
Zkusil jsem to a nefunguje to.
Ten to script byl převzat od tut Odkaz.
radas
Profil *
tady tohle
if($result1){
header("location:update.php");
}

dejte do komentáře a pak zkuste připsat toto
$sql1="UPDATE $tbl_name SET img='$img[$i]', delka='$delka[$i]' WHERE id='$id[$i]'";
$result1=mysql_query($sql1);
echo mysql_error();

a co to vypíše...
Pavvelka
Profil *
Teďka to mám takhle a stejně to nejde, když dám odeslat tak se nic nezmění.
<?php
$host="localhost"; // Host name 
$username="username"; // Mysql username 
$password="password"; // Mysql password 
$db_name=" Database"; // Database name 
$tbl_name="Table"; // Table name 

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// Check if button name "Submit" is active, do this 
if($Submit){
for($i=0;$i<$count;$i++){
$sql1="UPDATE $tbl_name SET img='$img[$i]', delka='$delka[$i]' WHERE id='$id[$i]'";
$result1=mysql_query($sql1);
echo mysql_error();
}
}


$sql="SELECT * FROM $tbl_name order by id desc limit 20";
$result=mysql_query($sql);

// Count table rows 
$count=mysql_num_rows($result);
?>
<table width="500" border="0" cellspacing="1" cellpadding="0">
<form name="form1" method="post" action="">
<tr> 
<td>
<table width="900" border="0" cellspacing="1" cellpadding="0">


<tr>
<td align="center"><strong>Id</strong></td>
<td align="center"><strong>title</strong></td>
<td align="center"><strong>Obrázek</strong></td>
<td align="center"><strong>Délka</strong></td>
</tr>
<?php
while($rows=mysql_fetch_array($result)){
?>
<tr>
<td align="center" width="30px"><? $id[]=$rows['id']; ?><? echo $rows['id']; ?></td>
<td align="center"><a href="<? echo $rows['url']; ?>" target="_blank"><? echo $rows['title']; ?></a></td>
<td align="center"><input name="img[]" type="text" id="img" value="<? echo $rows['img']; ?>"></td>
<td align="center"><input name="delka[]" type="text" id="delka" value="<? echo $rows['delka']; ?>"></td>
</tr>
<tr><td><div style="margin-top:5px;margin-bottom:5px;border-bottom:1px solid #DDDDDD;"></div></td>
<tr>
<?php
}
?>
<tr>
<td colspan="4" align="center"><input type="submit" name="Submit" value="Submit"></td>
</tr>
</table>
</td>
</tr>
</form>
</table>
radvis
Profil
Všude dáváš $$submit a za prvé nemáš nikde třeba $submit = $_POST['submit']; a celkově, ty nikde neodchytáváš ty data. Pak tam máš třeba $count a také nikde nevidím, že ji máš nadefinovanou.
Pavvelka
Profil *
radvis:
$count

řádek 26
$count=mysql_num_rows($result);



$submit už jsem taky změnil na $_POST['Submit']

// Check if button name "Submit" is active, do this 
if($_POST["Submit"]){

// Count table rows
$sql2="SELECT * FROM $tbl_name";
$result2=mysql_query($sql2); 
$count=mysql_num_rows($result2);
for($i=0;$i<$count;$i++){
$img[]=$_POST["img[]"];
$delka[]=$_POST["delka[]"];
$sql1="UPDATE $tbl_name SET img='$img[$i]', delka='$delka[$i]' WHERE link_id='$link_id[$i]'";
$result1=mysql_query($sql1);
echo mysql_error();
}
}


Pořád nic, ale jinak mě to vypíše z DB a už se to neaktualizuje.
radas
Profil *
Pavvelka:
proč počitate ty řádky? tam snad mělo byt počet proměnné $link_id a kde je definovana?
for($i=0;$i<$link_id;$i++){
$img[]=$_POST["img[]"];
$delka[]=$_POST["delka[]"];
$sql1="UPDATE $tbl_name SET img='$img[$i]', delka='$delka[$i]' WHERE link_id='$link_id[$i]'";
$result1=mysql_query($sql1);
echo mysql_error();
}
}

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