- Автор темы
- #1
Всем привет. столкнулся со странной проблемой - стоит модуль Для просмотра ссылки Войди или Зарегистрируйся
Суть его в том что сначала выбираешь раздел, потом категорию, потом статью и сразу же грузится выбранная статья.
И все вроде бы замечательно,только сайт на китайскомИ вместо иероглифов-знаки вопроса. но только до тех пор, пока не сделаешь окончательный выбор. потом загружается статья и путь к ней выбран в модуле , и все буквы отображаются как надо...
При этом разделы при выборе сразу на китайском. А категории и статьи - вопросами.
Тоесть виноваты файлы
findCat.php
и findArticle.php
они передают главному файлу данные в неправильной кодировке (хотя,конечно, может быть и не в этом проблема)
ну и вот главный на всякий случай.
дело точно не в остальном сайте, а именно в модуле.
сижу, ковыряюь целый день,но моих знаний явно недостаточно, даже не знаю в какую сторону искать...везде не то...
поэтому буду очень благодарен за любую помощь. хотябы подскажите как поискать...
Суть его в том что сначала выбираешь раздел, потом категорию, потом статью и сразу же грузится выбранная статья.
И все вроде бы замечательно,только сайт на китайскомИ вместо иероглифов-знаки вопроса. но только до тех пор, пока не сделаешь окончательный выбор. потом загружается статья и путь к ней выбран в модуле , и все буквы отображаются как надо...
При этом разделы при выборе сразу на китайском. А категории и статьи - вопросами.
Тоесть виноваты файлы
findCat.php
PHP:
<?php
include ('../../configuration.php');
$config = new JConfig();
$dbprefix=$config->dbprefix."categories";
//echo $config->host;
?>
<?php $sectionId=intval($_GET['section']);
//$stateId=intval($_GET['state']);
$link = mysql_connect($config->host, $config->user,$config->password); //changet the configuration in required
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db($config->db);
$query="SELECT id,title FROM $dbprefix WHERE section='$sectionId' AND published='1'";
$result=mysql_query($query);
?>
<select name="Cat" onchange="getCat(this.value)">
<option>Select Category</option>
<?php while($row=mysql_fetch_array($result)) { ?>
<option value=<?php echo $row['id']; ?>><?php echo $row['title']; ?> </option>
<?php } ?>
</select>
PHP:
<?php
include ('../../configuration.php');
$config = new JConfig();
$dbprefix=$config->dbprefix."content";
//echo $config->host;
?>
<?php $sectionId=intval($_GET['section']);
$catId=intval($_GET['cat']);
$link = mysql_connect($config->host, $config->user,$config->password); //changet the configuration in required
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db($config->db);
$query="SELECT id,title FROM $dbprefix WHERE catid='$catId'";
$result=mysql_query($query);
?>
<select name="article" id="article" onchange="goToPage('article')">
<option>Select Article</option>
<?php while($row=mysql_fetch_array($result)) { ?>
<option value=<?php echo $row['id']; ?> > <?php echo $row['title']; ?> </option>
<?php } ?>
</select>
ну и вот главный на всякий случай.
PHP:
<?php
//quickjump Module by Sharif Mamdouh http://www.inowweb.com
defined('_JEXEC') or die('Restricted access');
global $mainframe;
$database = & JFactory::getDBO();
$moduleclass_sfx = $params->get('moduleclass_sfx');
$itemid = $params->get('itemid');
$exsections = $params->get('exsections');
$ids = explode( ',', $exsections );
JArrayHelper::toInteger( $ids );
$Condition = ' AND (s.id =' . implode( ' OR s.id = ', $ids ) . ')';
$Conditions = ' AND (s.sectionid =' . implode( ' OR s.sectionid = ', $ids ) . ')';
//$u =& JFactory::getURI();
//print_r( $u->_vars->id);
//print_r($u);
$article_id = (int) JRequest::getVar('id', false);
$query = "SELECT * FROM #__content AS s WHERE s.id= $article_id $Conditions";
$database->setQuery($query);
$rows = $database->loadObjectList();
foreach ($rows as $item) {
$catid= $item->catid;
$sectionid= $item->sectionid;
}
//print_r($rows);
//print_r($rows[0][1]);
// select the published sections
$query = "SELECT s.id, s.title FROM #__sections AS s WHERE s.published=1 $Condition";
$database->setQuery($query);
$sections = $database->loadObjectList();
// select the published categories
$query = "SELECT s.id, s.title FROM #__categories AS s WHERE s.published=1 AND s.section=$sectionid";
$database->setQuery($query );
$categories = $database->loadObjectList();
// select the published Articles
$query = "SELECT * FROM #__content AS s WHERE s.catid= $catid";
$database->setQuery($query );
$articles = $database->loadObjectList();
?>
<html>
<head>
<script language="javascript" type="text/javascript">
<?php
echo("
var jsLiveSite='");
echo(JURI::base());
echo("';\n");
echo("
var ItemID='");
echo($itemid);
echo("';\n");
?>
function getXMLHTTP() { //fuction to return the xml http object
var xmlhttp=false;
try{
xmlhttp=new XMLHttpRequest();
}
catch(e) {
try{
xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e){
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e1){
xmlhttp=false;
}
}
}
return xmlhttp;
}
function getSection(sectionId) {
var strURL=jsLiveSite+"/modules/mod_quickjump/findCat.php?section="+sectionId;
var req = getXMLHTTP();
if (req) {
req.onreadystatechange = function() {
if (req.readyState == 4) {
// only if "OK"
if (req.status == 200) {
document.getElementById('statediv').innerHTML=req.responseText;
} else {
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}
function getCat(catId) {
var strURL=jsLiveSite+"/modules/mod_quickjump/findArticle.php?cat="+catId;
var req = getXMLHTTP();
if (req) {
req.onreadystatechange = function() {
if (req.readyState == 4) {
// only if "OK"
if (req.status == 200) {
document.getElementById('citydiv').innerHTML=req.responseText;
} else {
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}
function goToPage( id ) {
var node = document.getElementById( id );
// Check to see if valid node and if node is a SELECT form control
// Go to web page defined by the VALUE attribute of the OPTION element
//document.form.submit();
window.location.href= jsLiveSite+'index.php?option=com_content&view=article&id='+node.options[node.selectedIndex].value+'&Itemid='+ItemID;
}
</script>
</head>
<body>
<div class="joomla_quickjump<?php echo $moduleclass_sfx?>">
<table width="60%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150"><select name="section" onChange="getSection(this.value)">
<option value="">Select Section</option>
<?php foreach ($sections as $item) {
$sel='';
if($item->id==$sectionid)
{
$sel='selected="selected"';
}
?>
<option value=<?php echo $item->id; ?> <?php echo $sel; ?>><?php echo $item->title; ?></option>
<?php
} ?>
</select></td>
</tr>
<tr style="">
<td ><div id="statediv"><select name="cat" onChange="getCat(this.value)" >
<?php if(!$article_id) { ?>
<option>Select Section First</option>
<?php } ?>
<?php foreach ($categories as $item) {
$sel='';
if($item->id==$catid)
{
$sel='selected="selected"';
}
?>
<option value=<?php echo $item->id; ?> <?php echo $sel; ?>><?php echo $item->title; ?></option>
<?php
} ?>
</select></div></td>
</tr>
<tr style="">
<td ><div id="citydiv"><select name="article" id="article" onChange="goToPage('article')">
<?php if(!$article_id) { ?>
<option>Select Category First</option>
<?php } ?>
<?php foreach ($articles as $item) {
$sel='';
if($item->id==$article_id)
{
$sel='selected="selected"';
}
?>
<option value=<?php echo $item->id; ?> <?php echo $sel; ?>><?php echo $item->title; ?></option>
<?php
} ?>
</select></div></td>
</tr>
</table>
</div>
<div align="right" style="color:#999;margin-bottom:3px;font-size:9px">By i<a target="_blank" class="external" title="web design company" href="http://www.inowweb.com"><span style="color:#999;margin-bottom:3px;font-size:9px" >Web Design</span></a></div>
</body>
</html>
сижу, ковыряюь целый день,но моих знаний явно недостаточно, даже не знаю в какую сторону искать...везде не то...
поэтому буду очень благодарен за любую помощь. хотябы подскажите как поискать...