| Autor | Zpráva | ||
|---|---|---|---|
| Ajtak Profil * |
#1 · Zasláno: 25. 5. 2012, 12:04:47 · Upravil/a: Ajtak
Mám takovýto kód pro výpis obrázků z databáze: a já bych potřeboval jak je ten input aby se tam dalo napsat hodnocení a potom se to uložilo do db.
Jde to nějak? <?php
$query = "SELECT image, thumb, tags, number FROM images";
$result = mysql_query($query);
while(list($image, $thumb, $tags, $number) = mysql_fetch_array($result)){
echo "<tr><td><h1>$number.</td><td><a class='vlightbox1' href='".$image."'><img src='".$thumb."' ></td><td><input type=text></td></tr>";
}
?> U každé fotky se dělá to okýnko a já potřebuji obsah těchto políček uložit do db sloupec body. ![]() Chci aby s tam psali čísla, které by se uložili do db. |
||
| nemeja Profil |
#2 · Zasláno: 25. 5. 2012, 14:11:12
muzes udelat treba novou tabulku (id obrazku, id_klikajiciho, hodnoceni). Do te zapisovat jednotliva hodnoceni a pak pro obrazek pocitat prumer
|
||
| BedyR Profil |
#3 · Zasláno: 25. 5. 2012, 15:36:08 · Upravil/a: BedyR
Ajtak:
No nevím jestli tam máš v tabulce 'images' pole (samo že se můžou jmenovat jinak) id - identifikační číslo rekordu body - suma přidělených bodů hodnotilo - počet hodnotitelů já vycházím z toho že ano doplněný tvůj skript jsem pracovně nazval galerie to pole za obrázkem by mělo být radši <select><option>1 .... kde by jsi měl všechny hodnoty např 1-5 nebo radiobuttony nebo tlačítka protože takhle budeš muset testovat rozsah hodnot a zda je to číslo. dále tam můžeš mít zobrazenu průměrnou hodnotu hodnocení (třeba pod tím polem,<sele ....) galerie.php <?php
echo "<form method="post" action="zpracovat.php" target="_self">
<table>';
$query = "SELECT image, thumb, tags, number, id, body, hodnotilo FROM images";
$result = mysql_query($query);
while(list($image, $thumb, $tags, $number, $id, $body, $hodnotilo) = mysql_fetch_array($result)){
$name = "id".$id."#".$body."#".$hodnotilo."#";
$prum = round($body/$hodnotilo,1);
echo '<tr>
<td>
<h1>'.$number.'</h>
</td>
<td>
<a class="vlightbox1" href="'.$image.'">
<img src="'.$thumb.'" >
</a>
</td>
<td>
<span>'.$prum.'</span>
</td>
<td>
<select name="'.$name.'">
<option value="1">
<option value="2">
<option value="3">
<option value="4">
<option value="5">
</select>
</td>
</tr>';
}
echo '<table>
<form method="post" action="zpracovat.php" target="_self">';
?>inputem zakládáš položky ty je ale potřebuješ aktualizovat na to je UPDATE skript je bez kontroli platnosti hodnot zpracovat.php <?php
while (list($key, $val) = each($_POST)) {
if (!empty($val) {
list($id,$body,$hodnotilo) = exploded("#", $key);
$id = substr($id,2);
$body += $val;
$hodnotilo ++;
$query = "UPDATE images SET body = ".$body.", hodntilo = ".$hodnotilo." WHERE id = ".$id ;
$result = mysql_query($query);
}
}
header("Location: ./galerie.php");
exit;
?>Ajtak: pak bys tam měl ještě mít kontrolu na hodnotitele aby stejný člověk během minuty nehodnotil třeba desetkrát |
||
| Ajtak Profil * |
#4 · Zasláno: 25. 5. 2012, 17:10:13
Ten zpracuj mi hlásí chybu již na 3 řádku: Parse error: syntax error, unexpected '{' in /home/users/guest/kurz.g6.cz/web/system/zpracovat.php on line
|
||
| Someone Profil |
Ajtak:
Nebude to přesně podle tvého kódu, ale snad si to zvládneš poupravit: <form method="POST">
<table>
<tr><td>P.Č.</td><td>Obrázek</td><td>Body</td></tr>
<?php
$sql = mysql_query("SELECT * FROM obrazky");
while ($vysledek = mysql_fetch_assoc($sql)) {
echo '
<tr>
<td>'.$vysledek['id'].'</td><td><img alt="Obrázek" src="'.$vysledek['cesta]'.'" /></td>
<td>
<select name="body[]">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<input type="hidden" name="id[]" value="'.$vysledek['id'].'">
</td>
</tr>
';
}
?>
<tr><td colspan="3"><input type="submit" name="hlasovat" value="Hlasovat"></td></tr>
</table>
</form>
<?php
if (isset($_POST['hlasovat'])) {
foreach($_POST['id'] as $klic => $id) {
mysql_query("UPDATE obrazky SET body=body+".$_POST['body'][$klic].", pocet_hodnoceni = pocet_hodnoceni+1 WHERE id=".$id);
}
}
?> |
||
| Ajtak Profil * |
#6 · Zasláno: 25. 5. 2012, 18:20:30
Pokusím se to vysvětlit jinak:
Mám takovýto skript pro výpis obrázků z databáze: <?php
$query = "SELECT image, thumb, tags, number, id, hlasovat FROM images";
$result = mysql_query($query);
while(list($image, $thumb, $tags, $number, $id, $hlasovat) = mysql_fetch_array($result)){
$name = "id".$id."#".$hlasovat."#";
echo '<tr>
<td>
<h1>'.$number.'</h>
</td>
<td>
<a class="vlightbox1" href="'.$image.'">
<img src="'.$thumb.'" >
</a>
</td>
<td>
<input type=text name="hlasovat">
</td>
</tr>';
}
echo '<table>
<input type="submit">';
?>A já potřebuji skript, který navýší číslo ve sloupci hlasovat o počet $_POST[name]. Jde to nějak? Prosím o řešení |
||
| Someone Profil |
#7 · Zasláno: 25. 5. 2012, 18:22:37
Viz [#5] Someone
|
||
| Ajtak Profil |
Jak upravuji, tak upravuji, stále to hází nějaké chyby.
|
||
| Ajtak Profil |
#9 · Zasláno: 25. 5. 2012, 20:01:04
Prosím o pomoc...
|
||
|
Časová prodleva: 14 let
|
|||
0
