[PHP] načtení konkrétní položky z databáze

Webdesign, HTML, CSS, Flash, PHP, ASP, .NET, JavaScript. Kritika www stránek na Smetišti.

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod atilius 14. 5. 2012 21:41

Jsem opravdový začátečník, který potřebuje jen drobnost jednoduše a srozumitelně :)

Na jedné webové stránce dělám výpis položek z databáze a chci k tomu udělat i odkaz na editaci tak, že se ta konkrétní položka přetáhne do formuláře na další webové stránce.

Na stránce jedna to je takto:

<a href="edit.php?id=<?echo"".mysql_Result($vysledek, $id, "id").""; ?>" >edit.php</a>

http://www.example.com/edit.php?id=1

A na druhé bych čekal, že se mi vypíše ID té položky, ale vždy je tam o jednu vyšší

<?
$spojeni = mysql_connect("mysql", "$PHP_AUTH_USER", "$PHP_AUTH_PW");
if (!$spojeni):
echo "Nepodařilo se připojit k databázi";
else:

$vysledek = mysql_db_query("user","select * from Tabulka where id");
?>
ID: <?echo"".mysql_Result($vysledek,$id,"id").""; ?>
Vypíše se mi ID:2 - proč ne 1? jak to tam mám dostat? Pak už si položky z tabulky vypíšu, ale já mám vždy o řádek víc, než chci
<?
endif;
mysql_FreeResult($vysledek);
mysql_Close();
?>


Díky za jednodcuhé! rady :)

Martin
atilius
Junior

Odeslat příspěvekod K8 14. 5. 2012 21:57

na www.php.net je manuál (poslední počeštěnou verzi můžet najít na http://webserver.chytrak.cz )

nepoužívej mysql_db_query a mysql_Result (u tohoto příkazu v manuálu se dočteš, proč ho nepoužívat)

nahraď to mysql_select_db a myslq_query (vrátí ti všechny hodnoty daného záznamu najednou na rozdíl od toho mysql_Result, které ti vrátí jen hodnotu z jednoho sloupečku té tabulky)

co je to za dotaz "select * from Tabulka where id" - co znamená to id na konci?
K8
Pokročilý

Odeslat příspěvekod atilius 14. 5. 2012 22:09

select * from Tabulka where id"

v Tabulce jsou položky, kdy jedna z nich je id. A podle toho přenostu edit.php?id=2 se měla např. vybrat položka 2.
atilius
Junior

Odeslat příspěvekod firefoxik 14. 5. 2012 23:03

Neco malo sem v sql delal, ale
"select * from Tabulka where id" je nesmysl, po prekladu:
vyber vsechny z tabulky kde id.....a nic;
dotaz by mel bejt neco jako
"select * from Tabulka where id=neco" to neco muse bejt treba promenna $id


Jinak peknej malej ale dobrej man je http://www.junext.net/mysql/
AMD PhenomII X4/6GB RAM/1500GB HDD/GF 9600GT 1GB
firefoxik
Junior
Uživatelský avatar

Odeslat příspěvekod karlos00x 15. 5. 2012 07:41

pokud jsi opravdu zacatecnik, povez nam prosim podle jake knihy nebo jakeho serialu jedes?
(pak budeme moct doplnit lepsi zdroje)
Upgrade který má smysl: SSD. Zažijete svižný počítač.
karlos00x
Pokročilý


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 1 návštěvník