[php] probleme de programme

Fermé
tchoa1 Messages postés 10 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 20 décembre 2007 - 15 mai 2007 à 15:30
tchoa1 Messages postés 10 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 20 décembre 2007 - 15 mai 2007 à 19:09
Voila j'ai cette page PHP.

Le but est de créer un tableau contenant des dates de début et de fin de projet, le nom du projet et le chemin d'un aperçu 3d du projet.

Jusque là pas de problème. Dans cette même page (en dessous du tableau j'affiche un objet(3dxml) .

Ce que je désirerais faire c'est afficher l'apercu du projet que je viens de cliquer fonction (onclick).Avec ce programme, l'apercu qui s'affiche est forcement le dernier du tableau.Je ne sais pas ce qu'il faudrait ecrire à la suite du onclick pour que ca marche

Est ce que vous voyez ce que je veux dire ...

<?php
GLOBAL $AppUI, $canRead, $canEdit, $m, $url_actif;
function CreateTableOfProjects(){
	$mois[1] = "Jan.";
	$mois[2] = "Fev.";
	$mois[3] = "Mar.";
	$mois[4] = "Avr.";
	$mois[5] = "Mai.";
	$mois[6] = "Jun.";
	$mois[7] = "Jul.";
	$mois[8] = "Aou.";
	$mois[9] = "Sep.";
	$mois[10] = "Oct.";
	$mois[11] = "Nov.";
	$mois[12] = "Dec.";
	$stringout = '';
	$projects;
	$i = 0;
	$q = new DBQuery;
	$q->addTable('projects');
	$q->addQuery('project_id, project_name, project_start_date, project_end_date, project_url, project_status');
	$q->exec();
	while ( $row = $q->fetchRow() ){
		$projects[$i]['project_id'] = $row['project_id'];
		$projects[$i]['project_name'] = $row['project_name'];
		$projects[$i]['project_url'] = $row['project_url'];
		$projects[$i]['project_start_date'] = $row['project_start_date'];
		$projects[$i]['project_end_date'] = $row['project_end_date'];
		$i++;
	}
		
	$q->clear();
	if ($projects == NULL){
		$stringout = $stringout."<table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"1\" class=\"tbl\"><tr>\n\t\t<th colspan = \"\">Il n'existe aucun Projet. Veuillez en créer un et réessayer.</th></tr></table>";
		echo $stringout;
		$nobudgets = 1;
	}
	
	else{
		$stringout = $stringout."<table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"1\" class=\"tbl\"><tr>\n\t\t<th colspan = \"\">Date de début</th><th>Date de fin</th><th>Projet</th><th>Url Visu3D</th></tr>";
		$i = 0;
		foreach ($projects as $eachproject){
			$start = $mois[(int)substr($eachproject['project_start_date'], 5, 2)]." ".(int) substr($eachproject['project_start_date'], 8, 2).", ".(int) substr($eachproject['project_start_date'], 0, 4);
			$end = $mois[(int)substr($eachproject['project_end_date'], 5, 2)]." ".(int) substr($eachproject['project_end_date'], 8, 2).", ".(int) substr($eachproject['project_end_date'], 0, 4); 
			$stringout = $stringout."<tr><td>\n\t\t<input name=\"project_id".$eachproject['project_id']."\" id=\"project_id".$eachproject['project_id']."\" value=\"".$eachproject['project_id']."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"project_name".$eachproject['project_id']."\" id=\"project_name".$eachproject['project_id']."\" value=\"".$eachproject['project_name']."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"project_start_date".$eachproject['project_id']."\" id=\"project_start_date".$eachproject['project_id']."\" value=\"".$eachproject['project_start_date']."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"project_end_date".$eachproject['project_id']."\" id=\"project_end_date".$eachproject['project_id']."\" value=\"".$eachproject['project_end_date']."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"project_url".$eachproject['project_id']."\" id=\"project_url".$eachproject['project_id']."\" value=\"".sprintf("%.2f",(round(($eachproject['project_url']), 2)))."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"neworexisting".$eachproject['project_id']."\" id=\"neworexisting".$eachproject['project_id']."\" value=\"existing\" type=\"hidden\">\n\t\t";
			$stringout = $stringout.$start."</td><td>".$end."</td><td>".$eachproject['project_name']."</a></td><td><a href=\"#\" onclick==\"".$eachproject['project_url']."\">".$eachproject['project_url']."</td></tr>\n\t\t";
			$i++;
		}
		$url_actif=$eachproject['project_url'];
		$i++;
		$stringout = $stringout."</table>";
		echo $stringout;
		echo
		'<div align="center">
					<table id="table3" style="border-collapse: collapse;" border="0" height="489" width="604">
						<tbody><tr>

							<td width="602">
							<object classid="clsid:5ABD296B-F8A0-436C-B2F7-B19170C43D28" id="viewer" height="477" width="592">
								<param name="DocumentFile" value="'.$url_actif.'" ref="" valuetype="ref">
							</object>
							</td>
						</tr>
						</tbody></table>
				</div>

		 </font> </div>
		';
	}
}

if (!$canRead) {			// lock out users that do not have at least readPermission on this module
	$AppUI->redirect( "m=public&a=access_denied" );
}


if ($_GET['suppressHeaders'] == 1){
	echo '<link rel="stylesheet" type="text/css" href="style/print.css" media="print" />';
	echo '<link rel="stylesheet" type="text/css" href="style/print.css" media="print" />';
	echo '<link rel="stylesheet" type="text/css" href="style/calendar.css" />';
	echo '<link rel="stylesheet" type="text/css" href="./style/default/main.css" media="all" />';
	echo '<link rel="stylesheet" type="text/css" media="all" href="/lib/calendar/calendar-dp.css" title="blue" />';
}

?>
<link rel="stylesheet" type="text/css" href="modules/3DXML/css/3DXML.css" />


<div id="errorout"></div>


<div id ="coverwhileloading" style="z-index:99;visibility: hidden;text-align:center; width:100%; position:absolute; height:100%; top:0px; background-repeat:no-repeat; background-position: center;background-color:#F0F0F0; ">
<div id="cancelrequest" style="font:bold 32pt Arial; color:black;padding-top:25%;">Cancel</div></div>

<table width="100%" border="0" cellpadding="2" cellspacing="1" class="tbl">
	<tr><td colspan="2"><?php CreateTableOfProjects();   ?>
</td></tr>
</table>  


</div>

<div><a href="?m=3DXML&suppressHeaders=1">Recharger la page sans En-tête</a></div>

5 réponses

KmiK Messages postés 24 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 21 mai 2007 31
15 mai 2007 à 15:44
Ce qu'il te faut changer dynamiquement par javascript le paramètre value
... onclick=\"document.getElementById('id_preview').value='".$eachproject['project_url']."'\"

et 

<param id='id_preview' name="DocumentFile" value="" ref="" valuetype="ref">


cordialement
0
tchoa1 Messages postés 10 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 20 décembre 2007
15 mai 2007 à 15:59
oula ça dépasse carrement mes compétences,
il faudrait que je définisse une fonction javascript?

j'ai essayé copier coller de ton code et j'ai des soucis de syntaxe, est ce qu'il faut que je définisse 'id_preview' et document.getElementById quelque part?
0
KmiK Messages postés 24 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 21 mai 2007 31
15 mai 2007 à 16:18
<?php
GLOBAL $AppUI, $canRead, $canEdit, $m, $url_actif;
function CreateTableOfProjects(){
	$mois[1] = "Jan.";
	$mois[2] = "Fev.";
	$mois[3] = "Mar.";
	$mois[4] = "Avr.";
	$mois[5] = "Mai.";
	$mois[6] = "Jun.";
	$mois[7] = "Jul.";
	$mois[8] = "Aou.";
	$mois[9] = "Sep.";
	$mois[10] = "Oct.";
	$mois[11] = "Nov.";
	$mois[12] = "Dec.";
	$stringout = '';
	$projects;
	$i = 0;
	$q = new DBQuery;
	$q->addTable('projects');
	$q->addQuery('project_id, project_name, project_start_date, project_end_date, project_url, project_status');
	$q->exec();
	while ( $row = $q->fetchRow() ){
		$projects[$i]['project_id'] = $row['project_id'];
		$projects[$i]['project_name'] = $row['project_name'];
		$projects[$i]['project_url'] = $row['project_url'];
		$projects[$i]['project_start_date'] = $row['project_start_date'];
		$projects[$i]['project_end_date'] = $row['project_end_date'];
		$i++;
	}
		
	$q->clear();
	if ($projects == NULL){
		$stringout = $stringout."<table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"1\" class=\"tbl\"><tr>\n\t\t<th colspan = \"\">Il n'existe aucun Projet. Veuillez en créer un et réessayer.</th></tr></table>";
		echo $stringout;
		$nobudgets = 1;
	}
	
	else{
		$stringout = $stringout."<table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"1\" class=\"tbl\"><tr>\n\t\t<th colspan = \"\">Date de début</th><th>Date de fin</th><th>Projet</th><th>Url Visu3D</th></tr>";
		$i = 0;
		foreach ($projects as $eachproject){
			$start = $mois[(int)substr($eachproject['project_start_date'], 5, 2)]." ".(int) substr($eachproject['project_start_date'], 8, 2).", ".(int) substr($eachproject['project_start_date'], 0, 4);
			$end = $mois[(int)substr($eachproject['project_end_date'], 5, 2)]." ".(int) substr($eachproject['project_end_date'], 8, 2).", ".(int) substr($eachproject['project_end_date'], 0, 4); 
			$stringout = $stringout."<tr><td>\n\t\t<input name=\"project_id".$eachproject['project_id']."\" id=\"project_id".$eachproject['project_id']."\" value=\"".$eachproject['project_id']."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"project_name".$eachproject['project_id']."\" id=\"project_name".$eachproject['project_id']."\" value=\"".$eachproject['project_name']."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"project_start_date".$eachproject['project_id']."\" id=\"project_start_date".$eachproject['project_id']."\" value=\"".$eachproject['project_start_date']."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"project_end_date".$eachproject['project_id']."\" id=\"project_end_date".$eachproject['project_id']."\" value=\"".$eachproject['project_end_date']."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"project_url".$eachproject['project_id']."\" id=\"project_url".$eachproject['project_id']."\" value=\"".sprintf("%.2f",(round(($eachproject['project_url']), 2)))."\" type=\"hidden\">\n\t\t";
			$stringout = $stringout."<input name=\"neworexisting".$eachproject['project_id']."\" id=\"neworexisting".$eachproject['project_id']."\" value=\"existing\" type=\"hidden\">\n\t\t";
			$stringout = $stringout.$start."</td><td>".$end."</td><td>".$eachproject['project_name']."</a></td><td><a href=\"#\" onclick=\"document.getElementById('id_preview').value='".$eachproject['project_url']."'\">".$eachproject['project_url']."</td></tr>\n\t\t";
			$i++;
		}
		$url_actif=$eachproject['project_url'];
		$i++;
		$stringout = $stringout."</table>";
		echo $stringout;
		echo
		'<div align="center">
					<table id="table3" style="border-collapse: collapse;" border="0" height="489" width="604">
						<tbody><tr>

							<td width="602">
							<object classid="clsid:5ABD296B-F8A0-436C-B2F7-B19170C43D28" id="viewer" height="477" width="592">
								<param id='id_preview' name="DocumentFile" value="'.$url_actif.'" ref="" valuetype="ref">
							</object>
							</td>
						</tr>
						</tbody></table>
				</div>

		 </font> </div>
		';
	}
}

if (!$canRead) {			// lock out users that do not have at least readPermission on this module
	$AppUI->redirect( "m=public&a=access_denied" );
}


if ($_GET['suppressHeaders'] == 1){
	echo '<link rel="stylesheet" type="text/css" href="style/print.css" media="print" />';
	echo '<link rel="stylesheet" type="text/css" href="style/print.css" media="print" />';
	echo '<link rel="stylesheet" type="text/css" href="style/calendar.css" />';
	echo '<link rel="stylesheet" type="text/css" href="./style/default/main.css" media="all" />';
	echo '<link rel="stylesheet" type="text/css" media="all" href="/lib/calendar/calendar-dp.css" title="blue" />';
}

?>
<link rel="stylesheet" type="text/css" href="modules/3DXML/css/3DXML.css" />


<div id="errorout"></div>


<div id ="coverwhileloading" style="z-index:99;visibility: hidden;text-align:center; width:100%; position:absolute; height:100%; top:0px; background-repeat:no-repeat; background-position: center;background-color:#F0F0F0; ">
<div id="cancelrequest" style="font:bold 32pt Arial; color:black;padding-top:25%;">Cancel</div></div>

<table width="100%" border="0" cellpadding="2" cellspacing="1" class="tbl">
	<tr><td colspan="2"><?php CreateTableOfProjects();   ?>
</td></tr>
</table>  


</div>

<div><a href="?m=3DXML&suppressHeaders=1">Recharger la page sans En-tête</a></div>


PS: je ne peux pas tester ce code à ta place donc bonne chance

cordialement
0
tchoa1 Messages postés 10 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 20 décembre 2007
15 mai 2007 à 16:28
Quand je colle le code il me met toujours une erreur ligne 65

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /www/plateforme/modules/3DXML/voir_3DXML.php on line 65

visiblment param id ne lui va pas, est ce que il ne faut pas indiquer script a un endroit?
0
KmiK Messages postés 24 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 21 mai 2007 31
15 mai 2007 à 16:32
remplacer les guillemets ' par " autour de id_preview

cordialement

PS: Dsl de ne pouvoir vérifier l'ensemble de la syntaxe
Bon courage
0
tchoa1 Messages postés 10 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 20 décembre 2007 > KmiK Messages postés 24 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 21 mai 2007
15 mai 2007 à 19:09
C'est bon je n'ai plus de message d'erreur mais "value" reste désesperement vide quand j'edite les sources de la page générée, donc pas d'image.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tchoa1 Messages postés 10 Date d'inscription mardi 15 mai 2007 Statut Membre Dernière intervention 20 décembre 2007
15 mai 2007 à 16:30
J'ai une erreur qui apparait toujours, si il y a du javascript est ce qu'ilne faut pas le dire quelque part ? genre <script>


Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in www/plateforme/modules/3DXML/voir_3DXML.php on line 65


Encore une fois merci pour me donner un peu de ton temps.
0