Ouverture fenetre redimensionnée [Résolu]

cs_albator77 12 Messages postés jeudi 2 novembre 2000Date d'inscription 11 juillet 2005 Dernière intervention - 14 mai 2005 à 14:37 - Dernière réponse : cs_albator77 12 Messages postés jeudi 2 novembre 2000Date d'inscription 11 juillet 2005 Dernière intervention
- 20 mai 2005 à 13:34
Bonjour,
Je debute en php (et en programmation tous cours).
Sur mon site lorsque je clique sur un lien je souhaite ouvrir une autre fenetre (html ou php, je sais pas encore, mais je pense que ce sera php) d'une taille fixe, genre popup mais pas popup, sans les barres d'adresses et prédent, suivant...
J'ai un code javascript pour ca, mais apparemment ca ne fonctionne que pour les images, mais c'est exactement la meme chose que je souhaite.
Alors si quelqu'un a une idée ce serait cool.

Pour info le code Javascript :
<script type="text/javascript">
<!--
function popup(pimgSrc,pimgWidth,pimgHeight) {
var strOptions = ''; /** options pour l'ouverture de la fenêtre */
var win = null; /** pointeur vers la nouvelle fenêtre */
var strDocHTML = '' /** contenu de la page html qui contient l'image */

strOptions = 'location=0,menubar=0,scrollbars=0,status=0,titlebar=1,toolbar=0,directories=0';
strOptions+= ','+'width='+pimgWidth+',height='+pimgHeight;

/* ouverture de la fenêtre */
win = window.open('','frmPhotos',strOptions);

strDocHTML = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"\n'+
'\t"
http://www.w3.org/TR/html4/loose.dtd">\n'+
'<html lang="fr">\n\t<head>\n\t\t<title>Photos SUPER DESTROYERS<\/title>\n'+
'\t\t<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\n'+
'\t\t<style type="text/css"><!--\n'+
'body,p { margin:0; background: white;}\nimg { border:0;}\n--><\/style>\n'+
'\t<\/head>\n';

strDocHTML += '\n\t\n\n'+
'\t\t[/ ]<\/p>\n';
strDocHTML += '\n\t<\/body>\n<\/html>';

win.document.open();
win.document.write(strDocHTML); // on écrit le code HTML dans la nouvelle fenêtre
win.document.close();
win.focus();
}
</script>

Pour complément d'information je souhaite lorsque je clique sur plusieurs liens de meme nature ouvrir la meme page mais avec des informations différentes situés dans une base de données MySQL.

Merci d'avance pour ceux qui pourront m'aider.
Afficher la suite 

13 réponses

Répondre au sujet
coockiesch 2268 Messages postés mercredi 27 novembre 2002Date d'inscription 13 septembre 2013 Dernière intervention - 14 mai 2005 à 16:14
+3
Utile
Salut!

Je pense en effet que tu dois passer par un Popup. Mais différement.
Dans le code que tu montre, tu modifie le code HTML du popup
directement depuis ta fonction javascript. Ce qu'il te faudrait faire
c'est que le code source de ton popup soit défini dans un fichier php
et c'est celui ci qui servira de page. Ensuite, tu peux passer des
informations dans l'url pour que le fichier php aille chercher telle ou
telle info dans la base de données...



Par exemple:

<script language="JavaScript" type="text/javascript">

function popup(id)

{

var fenetre = window.open("fichiers/popup.php?id=" +
id, "fenetre", "directories no, location no, status = no, resizable
no, scrollbars no, width = 400, height = 250");

fenetre.moveTo((window.screen.availWidth - 400) / 2, (window.screen.availHeight - 250) / 2);

}

</script>

Donc voici la fonction JS qui t'ouvrira ton popup. Elle prend en paramètre un id, qu'elle transmettra au popup.



Dans fichiers/popup.php, tu peux ensuite avoir un truc genre:

<?php

$id = isset( $_GET['id'] ) && is_numeric( $_GET['id'] ) ? $_GET['id'] : 0;



if( $id == 0 )

die('Erreur');



// ... connection à la base de donnée



$result = mysql_query('SELECT * FROM table WHERE id=\'' . $id . '\'';

?>



Et voila pour un exemple de code php, ensuite, à toi de gérer le HTML, les entêtes, ...

Si tu as d'autres questions, hésites pas!



@++



R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de coockiesch
coockiesch 2268 Messages postés mercredi 27 novembre 2002Date d'inscription 13 septembre 2013 Dernière intervention - 15 mai 2005 à 15:00
+3
Utile
Salut!

Essaie, comme je proposais au début:

<script language="JavaScript" type="text/javascript">

function popup(id)

{


var fenetre = window.open("fichiers/popup.php?id=" +id, "fenetre",
"directories no, location no, status = no, resizable= no,
scrollbars no, width 400, height = 250");

fenetre.moveTo((window.screen.availWidth - 400) / 2, (window.screen.availHeight - 250) / 2);

}

</script>




Avec:

<?php

echo '[javascript:popup(' . $id . ')>Popup';

?>




Autrement, tu peux regrouper ta connection et ton select_db:

if( !@
mysql_connect($dbhost, $user,$password) || !@
mysql_select_db($usebdd) )

die('Erreur lors de la connection à la base de données');




]www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de coockiesch
cs_Anthomicro 9440 Messages postés mardi 9 octobre 2001Date d'inscription 13 avril 2007 Dernière intervention - 14 mai 2005 à 17:34
0
Utile
Salut,



y'a pas mal de javascript =>http://www.javascriptfr.com

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Commenter la réponse de cs_Anthomicro
cs_albator77 12 Messages postés jeudi 2 novembre 2000Date d'inscription 11 juillet 2005 Dernière intervention - 14 mai 2005 à 19:10
0
Utile
A coockiesch

merci,
peut tu me dire comment on integre la fonction popup(id) dans le code html STP
Et peut tu aussi me dire comment on affiche le résultat de la ligne correspondant à l'id dans le fichier popup.php.

A Anthomicro
merci aussi, bon site d'ailleurs, j'y suis déjà allé et c'est là d'ailleurs que j'avais récupéré le code javascript précédent.
Commenter la réponse de cs_albator77
coockiesch 2268 Messages postés mercredi 27 novembre 2002Date d'inscription 13 septembre 2013 Dernière intervention - 15 mai 2005 à 12:54
0
Utile
Salut!

En PHP, tu peux faire:



<?php

echo '[javascript:popup(' . $id . ')>Popup';

?>



Je comprends pas ce que tu veux pour le fichier popup.php... Tu peux préciser?



@++ et bon dimanche



R@f

<a href= www.allpotes.ch]: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Commenter la réponse de coockiesch
cs_albator77 12 Messages postés jeudi 2 novembre 2000Date d'inscription 11 juillet 2005 Dernière intervention - 15 mai 2005 à 14:07
0
Utile
Salut

Merci encore,

mon fichier popup.php :

<html>
<head>
</head>

<?php
$id = isset( $_GET['id'] ) && is_numeric( $_GET['id'] ) ? $_GET['id'] : 0;


if( $id == 0 )
die('Erreur');


// ... connection à la base de donnée
$dbhost = "localhost";
$user = "root";
$password = "password";
$usebdd = "encyclopedie"
$table="vaisseau_struct"


$connexion = mysql_connect("dbhost","user","password");


// ... verification connexion valide
if (!$connexion){
echo "Impossible d'effectuer la connexion";
exit;
}
// ... Connexion de la base de donnée
$db = mysql_select_db("$usebdd", $connexion);


// ... verification base de donnée
if (!$db){
echo "Impossible de sélectionner la base de donnée";
exit;
}
$result = mysql_query('SELECT * FROM vaisseau_struct WHERE id=\'' . $id . '\'';
echo $result;
?>

Voila pour le fichier popup.php, est ce que selon toi c'est bon ?

et pour ce qu'il est du fichier qui lance le popup il est en Html donc faut alors que je le renomme en PHP ?
moi pour ce fichier j'ai utilisé : (ça ne fonctionne d'ailleurs pas trop, la fenetre s'ouvre, mais la taille est pas bonne , de plus je ne pense pas qu'il renvoie l'ID)

[fichiers/popup.php Super Destroyers Stellaire]

Je pense qu'il y a quelquechose de pas bon, mais quoi ? je sais pas.

Merci encore et bon dimanche a toi aussi.
a+
Commenter la réponse de cs_albator77
cs_Anthomicro 9440 Messages postés mardi 9 octobre 2001Date d'inscription 13 avril 2007 Dernière intervention - 15 mai 2005 à 15:02
0
Utile
Enlève le language="javascript" qui est déprécié dans la source ;-)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Commenter la réponse de cs_Anthomicro
cs_albator77 12 Messages postés jeudi 2 novembre 2000Date d'inscription 11 juillet 2005 Dernière intervention - 18 mai 2005 à 22:31
0
Utile
Merci encore,
ca m'a deja fait avancé, mais j'ai encore un problème (et oui)

mon fichier : (en epargnant le début)
$resultat_sql mysql_query("select Nom,Type,Taille,Link from vaisseau_struct where Nom 'Jabitha'",$connexion);
$nombrelignes = mysql_num_rows($resultat_sql);
echo " Nom |Type |Taille |Link |\";
$i = 0;
while ($i<$nombrelignes){
$nom = mysql_result($resultat_sql,$i,'Nom');
$type = mysql_result($resultat_sql,$i,\"Type\");
$taille = mysql_result($resultat_sql,$i,\"Taille\");
$link = mysql_result($resultat_sql,$i,\"Link\");
echo \"----
$nom, $type, $taille, $link, \";
$i++;
}
echo"
";
?>

<?php
echo "";
?>

Donc la ce code fonctionne.

Maintenant je définis en dur la variable $id avec même valeur.
Le code :
$id = "Jabitha";
$result mysql_query("SELECT Nom,Type,Taille,Link FROM vaisseau_struct WHERE Nom '"+$id+"'",$connexion);
$nombrelignes = mysql_num_rows($resultat_sql);
echo " Nom |Type |Taille |Link |\";
$i = 0;
while ($i<$nombrelignes){
$nom = mysql_result($result,$i,'Nom');
$type = mysql_result($result,$i,'Type');
$taille = mysql_result($result,$i,'Taille');
$link1 = mysql_result($result,$i,'Link');
echo \"----
$nom, $type, $taille, $link1, \";
$i++;
}
$test = mysql_result(
echo"
";
?>

<?php
echo "";
?>

Et donc la ca ne fonctionne pas, il me met pour chaque ligne d'affichage ($nom,$prenom .....)


Warning: mysql_result(): supplied argument is not a valid MySQL result resource in c:\Inetpub\wwwroot\site\fichiers\test_db.php on line 101

Quelqu'un aurait il une idée.
Commenter la réponse de cs_albator77
cs_Anthomicro 9440 Messages postés mardi 9 octobre 2001Date d'inscription 13 avril 2007 Dernière intervention - 18 mai 2005 à 22:38
0
Utile
ça vient de ta requête MySQL

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Commenter la réponse de cs_Anthomicro
cs_albator77 12 Messages postés jeudi 2 novembre 2000Date d'inscription 11 juillet 2005 Dernière intervention - 19 mai 2005 à 07:56
0
Utile
C'est à dire ?
Commenter la réponse de cs_albator77
cs_Anthomicro 9440 Messages postés mardi 9 octobre 2001Date d'inscription 13 avril 2007 Dernière intervention - 19 mai 2005 à 18:06
0
Utile
Teste là dans PHPMyadmin, tu auras une erreur, et tu pourras corriger la syntaxe de ta requête.

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Commenter la réponse de cs_Anthomicro
cs_albator77 12 Messages postés jeudi 2 novembre 2000Date d'inscription 11 juillet 2005 Dernière intervention - 19 mai 2005 à 18:40
0
Utile
J'utilise pas phpmyadmin

mais c'est bon quelqu'un m'a expliqué que la concatenation en php c'etait des points et pas des +.
donc la pour cette partie c'est bon.

Je vais test maintenant la fonction popup

merci encore.
Commenter la réponse de cs_albator77
cs_albator77 12 Messages postés jeudi 2 novembre 2000Date d'inscription 11 juillet 2005 Dernière intervention - 20 mai 2005 à 13:34
0
Utile
C'est nikel ça fonctionne, merci à tous.
Commenter la réponse de cs_albator77

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.