Napisany przez: student137 15.09.2013, 19:34:34
Witam,
Jestem początkujący w sprawach programowania i potrzebuję waszej pomocy.
Chciałbym zrobić mape na którą po najechaniu myszku zmieni się obraz i bedzie wystwielac sie okienko dotyczące tego miejsca(TITLE).
w JS zrobilem skrypt i wszystko działa ładnie tylko, najezdzam na kordy i podswietla dane miejsce(zmienia obrazek) i daje info, ale chciałbym to podpiać pod baze danych aby ciagle nie zmieniac danych.
Próbowałem sam, ale jestem słaby i dla roznych cordów wyswietla te same dane z bazy danych. Czy mogłby mi ktoś napisać taki skrypt na 1 glówny obrazek i 2 które będa sie zmieniać po najechaniu na cordy, jednoczesnie jako tytul wyswietlac info z bazy danych lub coś podobnego. Byłbym wdzięczny, bym wiedział jak dalej postepować.
I przepraszam za taką lamerską prośbę.
Napisany przez: kamil4u 16.09.2013, 13:03:21
Pokaż kod i jak próbowałeś - wątpię, żeby ktoś charytatywnie napisał to dla Ciebie od zera, ale jeśli w swoim kodzie popełniłeś jakiś prosty kod to może, któremuś z nas uda się go wychwycić.
Napisany przez: student137 18.09.2013, 15:57:22
Od razu proszę nie krzyczcie bo dopiero sie uczę. Bład wynika pewnie z tego ze nie ma rozroznienia na cordy albo wyswietlane jpg pod baze i tak takie same $ wyswietla dla kazdego.
Kod
<html>
<head>
<title>Mapa</title>
<meta http-equiv="content-type"
content="application/xhtml+xml; charset=utf-8">
<meta name="Description" content="">
<meta http-equiv="Content-Language" content="pl">
<meta name="Keywords" content="">
<script type="text/javascript" src="jquery-1.10.2.js"></script>
<style type="text/css"> #area{ width:646px; height: 600px; position: relative; } #map_mapa{ position: absolute;top:0;left:0; z-index: 1; } #area li{ position: absolute;top:0;left:0; z-index: 2; display: none; } </style>
<script type="text/javascript"> $(document).ready(function() { $("area").hover(function() { var href=$(this).attr("href"); $(href).fadeIn("fast"); }, function() { var href=$(this).attr("href"); $(href).fadeOut("fast"); }); }); </script>
</head>
<?php require_once("include/baza.class.php5");
require_once("include/pytanie.class.php5");
require_once("include/utils.class.php5");
$baza=new baza();
$baza->connect();
$pytanie = new pytanie();
if($_GET[kto]=="")
{
$pytanie->zapytaj("SELECT id,dzielnica,adres,typ,wlasciciel,wartosc,html FROM nieruchomosci ORDER BY id");
$dane = $pytanie->get_dane();
$ilosc = $pytanie->get_ilosc();
for ($i=0;$i<$ilosc;$i++)
{
$id=$dane[$i][0];
$dzielnica=$dane[$i][1];
$adres=$dane[$i][2];
$typ=$dane[$i][3];
$wlasciciel=$dane[$i][4];
$wartosc=$dane[$i][5];
$html=$dane[$i][6];
$w=$i+1;
echo "<td>
<div style='width: 958px;' id='area'> <img
alt='' id='mapa' usemap='#mapa' src='paris.png'>
<ul>
<li id='11e1'><img src='strefa11/11e1.png'
usemap='#mapa'></li>
<li id='11e2'><img src='strefa11/11e2.png'
usemap='#mapa'></li>
</ul>
<map id='mapa' name='mapa'>
<area shape='poly' alt='11e1' title='Dzielnica: $dzielnica
Nr nieruchomości: $id
Adres: $adres
Typ: $typ
Właściciel: $wlasciciel
Wartość: $wartosc'
coords='1,791,67,814,67,828,1,828' href='#11e1'>
<area shape='poly' alt='11e2'
title='Dzielnica: $dzielnica
Nr nieruchomości: $id
Adres: $adres
Typ: $typ
Właściciel: $wlasciciel
Wartość: $wartosc'
coords='79,816,110,828,77,828' href='#11e2'>
</map>
</div>
</td>";
}
}
$baza->close();
?>
</head>
</body>
</html>
Naprawdę nikt nie wie?
Napisany przez: kamil4u 18.09.2013, 22:45:05
Pokaż jeszcze kod wynikowy z tego skryptu - najlepiej wstaw to gdzieś na serwer.
Napisany przez: kamil4u 18.09.2013, 23:05:50
A jesteś pewien, że w bazie danych nie masz tak zapisane - wszystko pod tymi sami nazwami?
Napisany przez: student137 18.09.2013, 23:07:49
tzn. nie rozumiem? $ mam takie jak w bazie danych. Wg mnie problem polega na tym, że $ sa pod 1 wiersz z tabeli a nie pod obrazki i wyswietla dla wszystkich to samo.
Gdybym w bazie danych w kolumnach dał np $adres1, $adres2 itd i tak opisał w title to by wyswietlalo dobrze, ale to by było zupelnie na około. Zamieniłbym prawidła wierszy na kolumny to by strasznie wyglądało.
Napisany przez: kamil4u 18.09.2013, 23:21:24
Czy w bazie danych nie masz przypadkiem zapisane wszystko właśnie pod taką nazwą jaka się wyświetla( we wszystkich polach te same teksty )? Zobaczę, jeszcze jutro na Twój problem - na razie idę spać
Napisany przez: student137 20.09.2013, 20:20:40
W bazie mam 2 zupełnie roznie wypelnione wiersze. Moj skrypt jest dobrze czytany, bo ma z niego wynika ze ma dla wszytskich przypisywac ten sam wiersz. Tylko gdyby sie udało przypisać nr ID do obrazka, to wtedy powinno dla kazdego przypisywac dane z jego id.Tylko ze ja nie wiem jak ma to wygladac na moim obecnym.
Dobranoc.
Robilem, az zrobilem. Glupio sie przyznać ale bład był amatorski, tak powinno wygladać:
Kod
<html>
<head>
<title>Mapa</title>
<meta http-equiv="content-type"
content="application/xhtml+xml; charset=utf-8">
<meta name="Description" content="">
<meta http-equiv="Content-Language" content="pl">
<meta name="Keywords" content="">
<script type="text/javascript" src="jquery-1.10.2.js"></script>
<style type="text/css"> #area{ width:646px; height: 600px; position: relative; } #map_mapa{ position: absolute;top:0;left:0; z-index: 1; } #area li{ position: absolute;top:0;left:0; z-index: 2; display: none; } </style>
<script type="text/javascript"> $(document).ready(function() { $("area").hover(function() { var dom=$(this).attr("dom"); $(dom).fadeIn("fast"); }, function() { var dom=$(this).attr("dom"); $(dom).fadeOut("fast"); }); }); </script>
</head>
<div style='width: 958px;' id='area'> <img
alt='' id='mapa' usemap='#mapa' src='paris.png'>
<ul>
<li id='11e1'><img src='strefa11/11e1.png'
usemap='#mapa'></li>
<li id='11e2'><img src='strefa11/11e2.png'
usemap='#mapa'></li>
<li id='11e3'><img src='strefa11/11e3.png'
usemap='#mapa'></li>
</ul>
<map id='mapa' name='mapa'>
<?php require_once("include/baza.class.php5");
require_once("include/pytanie.class.php5");
require_once("include/utils.class.php5");
$baza=new baza();
$baza->connect();
$pytanie = new pytanie();
if($_GET[kto]=="")
{
$pytanie->zapytaj("SELECT id,dzielnica,adres,typ,wlasciciel,wartosc,html FROM nieruchomosci ORDER BY id");
$dane = $pytanie->get_dane();
$ilosc = $pytanie->get_ilosc();
for ($i=0;$i<$ilosc;$i++)
{
$id=$dane[$i][0];
$dzielnica=$dane[$i][1];
$adres=$dane[$i][2];
$typ=$dane[$i][3];
$wlasciciel=$dane[$i][4];
$wartosc=$dane[$i][5];
$html=$dane[$i][6];
$w=$i+1;
echo "
<area shape='poly' alt='$id' title='Dzielnica: $dzielnica'
coords='$adres' dom='#$id'>";
}
}
$baza->close();
?>
</map></div>
</head>
</body>
</html>
Ten fragment był wpiety w petle a powinien byc poza nia:
Kod
<div style='width: 958px;' id='area'> <img
alt='' id='mapa' usemap='#mapa' src='paris.png'>
<ul>
<li id='11e1'><img src='strefa11/11e1.png'
usemap='#mapa'></li>
<li id='11e2'><img src='strefa11/11e2.png'
usemap='#mapa'></li>
<li id='11e3'><img src='strefa11/11e3.png'
usemap='#mapa'></li>
</ul>
<map id='mapa' name='mapa'>