Discussion:
A HREF onClick ... Erreur de syntaxe
(trop ancien pour répondre)
alainL
2009-06-25 22:03:48 UTC
Permalink
Bonsoir,

J'ai une liste de fêtes avec dates et lieux dans une base.
Une page html propose d'afficher la table pour l'année: Si oui, une
fenetre s'ouvre :

<A HREF="#" onClick="window.open('fetesannee.php','fenetre','toolbar0,
location=0, top=20, left=30, directories=0, status=0, scrollbars=1,
resizable=1, copyhistory=0, menuBar=0, width=800,
height=600');return(false)">année</A>
? </p>
et la liste apparaît triée par ordre de date. (order by "datedebut" dans
la requête)

Je voudrais qu'en cliquant sur la tête de colonne, le tri se fasse
suivant le contenu de celle-ci, par exemple "lieu".

Je pensais créer une autre page fetesannee2.php avec une requete
(...order by "lieu") mais mon code ne va pas (erreur de syntaxe :-))

echo '<td bgcolor="#669999"><b><u><A HREF="#"
onClick="window.open('fetesannee2.php','fenetre','toolbar=0, location=0,
top=20, left=30, directories=0, status=0, scrollbars=1, resizable=1,
copyhistory=0, menuBar=0, width=800,
height=600');return(false)">lieu:</A></u></b></td>';

d'autre part, je me demande si la nouvelle fenêtre remplacera l'ancienne...

Mais il y a sans doute plus simple ??

Merci
--
Alain L

c'est là : http://autourdalos.fr (bas de page que faire cette annee?)
Olivier Miakinen
2009-06-25 23:28:36 UTC
Permalink
Post by alainL
(erreur de syntaxe :-))
echo '<td bgcolor="#669999"><b><u><A HREF="#"
onClick="window.open('fetesannee2.php','fenetre','toolbar=0, location=0,
top=20, left=30, directories=0, status=0, scrollbars=1, resizable=1,
copyhistory=0, menuBar=0, width=800,
height=600');return(false)">lieu:</A></u></b></td>';
Par exemple :

echo "<td bgcolor='#669999'><b><u><A HREF='#'
onClick=\"window.open('fetesannee2.php','fenetre','toolbar=0, location=0,
top=20, left=30, directories=0, status=0, scrollbars=1, resizable=1,
copyhistory=0, menuBar=0, width=800,
height=600');return(false)\">lieu:</A></u></b></td>";

Ou bien :

echo <<<CODEHTML
<td bgcolor="#669999"><b><u><A HREF="#"
onClick="window.open('fetesannee2.php','fenetre','toolbar=0, location=0,
top=20, left=30, directories=0, status=0, scrollbars=1, resizable=1,
copyhistory=0, menuBar=0, width=800,
height=600');return(false)">lieu:</A></u></b></td>
CODEHTML;

RTFM : <http://www.php.net/manual/fr/language.types.string.php>.

Pour le reste, je crois que tu n'es pas dans le bon groupe.

Cordialement,
--
Olivier Miakinen
Aurelgadjo
2009-06-25 23:28:36 UTC
Permalink
Post by alainL
echo '<td bgcolor="#669999"><b><u><A HREF="#"
onClick="window.open('fetesannee2.php','fenetre','toolbar=0, location=0,
top=20, left=30, directories=0, status=0, scrollbars=1, resizable=1,
copyhistory=0, menuBar=0, width=800,
height=600');return(false)">lieu:</A></u></b></td>';
Un éditeur qui colore ton code pourrait t'aider ici
Tu verrai que la simple quote de ton écho rentre en conflit avec les
Post by alainL
echo 'salut "robert"'
c'est ok
Post by alainL
echo 'salut 'robert''
Là echo se perd et te mets une erreur.
Tu dois échaper tes simples quotes
Post by alainL
echo 'salut \'robert\''
est correct.
--
Attention, adresse d'expediteur invalide. ***@gmail.com pour m'ecrire
Sylvain SF
2009-06-25 23:28:36 UTC
Permalink
Post by alainL
Bonsoir,
'soir,

au titre, c'est une erreur HTML, à la lecture c'est une erreur SQL,
au prix d'un "?" et d'un "echo" ça peut passer pour une erreur PHP,
avez-vous dégrossi un peu la vraie source de l'erreur ?
Post by alainL
Je pensais créer une autre page fetesannee2.php avec une requete
(...order by "lieu") mais mon code ne va pas (erreur de syntaxe)
savoir quelle erreur par qui (MySQL, PHP, JS ou le navigateur)
serait utile pour en dire plus.
Post by alainL
d'autre part, je me demande si la nouvelle fenêtre remplacera l'ancienne...
le 2nd paramètre de window.open est le nom de la fenêtre target,
utilisez 2 noms différents et vous aurez 2 fenêtres (ou aucune
avec un anti-fenêtre-de-pub qui bloquerait window.open()).
Post by alainL
Mais il y a sans doute plus simple ??
possible mais pour faire quoi ?
au tout le moins le paramètre de tri pour MySQL pourrait faire
parti de l'URL fetesannee.php, être récupéré dans cette page
par un $_GET (yes!) et utiliser pour construire la requête.

Sylvain.
Christophe
2009-06-26 07:28:28 UTC
Permalink
Post by alainL
J'ai une liste de fêtes avec dates et lieux dans une base.
Une page html propose d'afficher la table pour l'année: Si oui, une
[...]
Post by alainL
Je voudrais qu'en cliquant sur la tête de colonne, le tri se fasse
suivant le contenu de celle-ci, par exemple "lieu".
Je pensais créer une autre page fetesannee2.php avec une requete
(...order by "lieu") mais mon code ne va pas (erreur de syntaxe :-))
[...]
Post by alainL
Mais il y a sans doute plus simple ??
Surtout, tu vas avoir deux page php quasiment identiques, si tu fais
toujours ainsi ton projet va vite devenir difficile à maintenir...
Utilise le conseil de Sylvain, passe ton param de tri dans l'url.
Lorsque tu maitriseras bien tout cela, tu pourras aussi t'interessaer
à AJAX, pour rafraichir uniquement ton tableau et pas toute la page.

A+
Christophe
alainL
2009-06-26 15:47:05 UTC
Permalink
Post by Christophe
Post by alainL
J'ai une liste de fêtes avec dates et lieux dans une base.
Une page html propose d'afficher la table pour l'année: Si oui, une
[...]
Post by alainL
Je voudrais qu'en cliquant sur la tête de colonne, le tri se fasse
suivant le contenu de celle-ci, par exemple "lieu".
Je pensais créer une autre page fetesannee2.php avec une requete
(...order by "lieu") mais mon code ne va pas (erreur de syntaxe :-))
[...]
Post by alainL
Mais il y a sans doute plus simple ??
Surtout, tu vas avoir deux page php quasiment identiques, si tu fais
toujours ainsi ton projet va vite devenir difficile à maintenir...
Utilise le conseil de Sylvain, passe ton param de tri dans l'url.
Lorsque tu maitriseras bien tout cela, tu pourras aussi t'interessaer
à AJAX, pour rafraichir uniquement ton tableau et pas toute la page.
A+
Christophe
Merci à tous. Finalement, après avoir corrigé mon code afin d'obtenir
une fenetre "qui marche" j'ai renoncé à la 2e fenetre et créé deux
pages suivant l'ordre choisi. Mais je vais regarder Ajax...
Bonne journée
--
Alain L

Mon village en Haute Soule : http://autourdalos.fr
Continuer la lecture sur narkive:
Loading...