Autor Zpráva
xaverista
Profil
Zdravím,

chci se zeptat. Mám url:

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

a potřebuji pomocí atributu a upravit GET aby adresa vypadala nějak takhle

http://www.example.com/test.php?id=1&obnov=1

ale jelikož chci takhle přidávat více úprav, chtěl bych najít nějaké řešení. Děkuji za návrhy :-)
smiesek
Profil
xaverista:
parametr $_GET['obnov'] bude vždy předávaný a nebo pouze dle výběru?
Tomáš123
Profil
xaverista:
atributu a
<a> je tag.

upravit GET aby adresa vypadala nějak takhle
Do HTML musíš manuálne zapísať adresu: <a href="http://www.example.com/test.php?id=1&obnov=1"></a>.
To je asi všetko čím vieš odkazom vplývať na hodnoty poľa GET.

ale jelikož chci takhle přidávat více úprav, chtěl bych najít nějaké řešení
Riešenie sa pravdepdobne skrýva kdesi na strane serveru. Z tohto chabého popisu ťažko hádať riešenie. Kedy sa má k URL pridať ďalší parameter? Je to podmienené nejakým procesom predtým? Máš nejaký PHP kód, kde si sa o to pokúšal?
xaverista
Profil
Mám stránku konkrétně edit-user.php kde za tím mám pomocí GET id uživatele, kterého spravuji... pro případ tedy user.php?id=1 a potom chci například obnovit jeho počet napsaných zpráv a chci, aby se do url přidalo obnov=1, aby PHP kod mohl vyhodnotit u koho má obnovit zprávy... URL by měla teda vypadat edit-user.php?id=1&obnov=1

Snažil jsem se to vecpat nějak takhle <a href="&obnov=1"> ale zjistil jsem že to co jsem zkoušel je blbost :-) tak hledám nějaké řešení, abych nemusel opisovat celou adresu, ale pouze přidávat GET parametry

Díky, xave
Kubo2
Profil
/**
 * Doplní k URL adrese zadané parametre za otáznikom.
 *
 * @param string URL adresa
 * @param array [názov parametru => hodnota]
 * @param bool ak je TRUE, nahradia sa všetky & v adrese za &amp;
 * @return string patrične upravenú URL adresu
 */
function uri_appendQuery($uri, array $args, $html = FALSE) {
    if(!$args) { // $args môže byť prázdne pole
        return $uri;
    }

    $sep = $html ? '&amp;' : '&';

    if(FALSE === $qmpos = strpos($uri, '?')) { // adresa ešte neobsahuje query string
        $uri .= '?';
    } elseif(strlen($uri) !== ($qmpos + 1)) { // adresa už obsahuje query string
        $uri .= $sep;
    }

    return $uri .
        http_build_query($args, NULL, $sep);
}

Živá ukážka

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0