hybrisMedlem sedan nov. 200862 inlägg hjälp någon,
ifall jag... (till exempel)
$("#popupContact").load("getItem.php");
som tydligen automatiskt skickar med ella GET eller POST
till server scriptet, dyker dessa upp i server delen som just
desamma GET eller POST som skickades eller måste jag
plocka upp dem?
eller ifall jag...
$.get('getItem.php', {item: $(this),section: $(this)}, function(data) {
$('#popupContact').html(data);
så måste de GET och POST som skall med nämnas i $.get funktionen,
så i detta fall är $(this) då det värde den vid det tillfället har?
jag har sett det där joxet med $this i OO sammanhang men har inte
lärt mig vad det gör...
har jag i något av ovanstående fall nått rätt på gång?
tack på förhand
/pär
Nu frågar om du mer eller mindre samma sak i två olika trådar, vilket är onödigt.
Du får nog läsa på lite mer om jQuery, det finns ju mängder med dokumentation och exempel kod på nätet.
Har du testat att Googla?
hybrisMedlem sedan nov. 200862 inlägg jo tack jag vet men jag har 2 pdf böcker om jQuery men mitt försök
fungerar inte, PHP delen skall göra det den ska då den är testad i
isolerat tillstånd
vad jag undrar är ifall POST och GET data finns i PHP delen som
vanligt så att säga... eller ifall jag missar någonting, skall jag lixom
se php delen som att den är inpetad som en "include" ?
jag får ett mySQL felmeddelande
hybris skrev:
jag får ett mySQL felmeddelande
Det skulle då underlätta om du skriver vilket felmeddelande du får.
Om du skickar data med POST, tar du emot dom med $_POST['variabel'] och GET med $_GET['variabel']
hybrisMedlem sedan nov. 200862 inlägg Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource
och jag har koll på att GET och POST är synkat mellan de olika instanser
Du måste visa mer kod än det där.
Visa sql frågan och all kod som "tillhör" den.
hybrisMedlem sedan nov. 200862 inlägg $("#thumb").click(function(){
// $("#popupContact").load("getItem.php");
$.get('getItem.php', {item: $(this),section: $(this)}, function(data) {
$('#popupContact').html(data);
});
//centering with css
centerPopup();
//load popup
loadPopup();
return false;
});
där är jQuery scriptet
<a id='thumb' href='?section={$section_id}&item={$item_click}&name={$item_menu_row['item_name']}' >
och länken som har all GET data, plus en onödig i slutet men den
får hänga med tills vidare
och slutligen PHP scriptet
<?php
if(isset($_COOKIE['language'])){
$language = $_COOKIE['language'];
}else {
$language = 3;
}
$item_id = $_REQUEST['item'];
$section = $_REQUEST['section'];
$get_item_query = "SELECT * FROM items WHERE item_id = {$item_id} AND language_id = $language";
$get_item_result = mysql_query($get_item_query);
$item_row = mysql_fetch_assoc($get_item_result);
echo "
<h class='standard_paragraph'>{$item_row['item_name']}</h>
<p class='standard_paragraph'>{$item_row['item_description']}</p>
";
$photo_query = "SELECT * FROM photographs WHERE item_id={$item_id}";
$photo_result = mysql_query($photo_query);
echo "<div id='gallery>";
while($photo_row = mysql_fetch_assoc($photo_result)){
$photo = $photo_row['url'];
echo "
<a href='?image_select=$photo&item=$item_id§ion=$section'><img id='pictures' src='tumnaglar/$photo' /></a>
";
}
echo "</div>";
?>
Tack MickeA för hjälpen
Är det där all kod?
Du öppnar ju aldrig någon anslutning mot en databas i det du visar ovan.
Testa lägg die($get_item_query); och visa här vad som skrivs ut i webbläsaren.
hybrisMedlem sedan nov. 200862 inlägg tack för tipset med att lägga en die för att se vad som händer,
det gör mig slutgiltigt säker på att, som jag till en början misstänkte,
att mina GET dyker inte upp på andra sidan...
ifall någon vill hjälpa, Micke?, så hänvisar jag till koden jag
postat ovan där problemet bör ligga i hur jQuery'n är skriven,
det andra har jag koll på sen förrut, det finns två varanter där,
en som använder sig av $.get och den andra av .load
nån som kan jQuery?
Så allt funkar om du skriver sökvägen med alla get variabler direkt i webbläsaren?
Alltså om du kör scripten helt utan ajax?
Kan det tänkas bli någon krock om du kör id="thumb" på flera ställen?
Gör du det?
ID måste vara unikt, så om du ska ha det på flera ställen får du använda class istället.
Får du några javascriptfel?
hybrisMedlem sedan nov. 200862 inlägg exaktemente. med hjälp av ditt tips med en "die" på rätt ställe
så ser jag att id't inte finns med i mySQL query satsen, tack för
hjälpen med den, det är alltid bra att veta var felet låg...
hybrisMedlem sedan nov. 200862 inlägg just det, jag känner till det felet =) däremot så fungerar en av
länkarna som jag loopar ut så jag kan testköra skiten i alla fall
men ärligt... är den här raden korrekt ifall jag jobbar med dynamiska
get id'n ???
$.get('getItem.php', {item: $(this),section: $(this)}, function(data) {
$('#popupContact').html(data);
});
vad jag är sugen på att veta ifall det är korrekt är
$(this)
alla exempel jag hittat använder hårdkodade parametrar
och skriver ut hela key/value paren i funktionsanropet
Men om en av länkarna fungerar tyder det på att du har flera ID som är exakt samma.
Validerar sidan? Får du några javascriptfel? Har aldrig använta jQuery och ajax tillsammans, så vet inte alls hur det fungerar, tycker det bara är krångligt.
hybrisMedlem sedan nov. 200862 inlägg inga fel, men parametrarna jag behöver för att få ut vad jag
vill ur databasen hänger inte med i anropet av PHP koden
felet ligger i hur jag skriver den där raden jag postade ovan,
alternativt kan man använda load tydligen men har inte fått
den att fungera heller, skitskumt!!!
hybrisMedlem sedan nov. 200862 inlägg problemet löst, ifall någon surfar förbi och vill som jag att köra en
AJAX med hjälp av Jquery så är en variant att...
$.get("item.php"+$(this).attr("href"), function(data){
$("#item_popup").html(data);
});
vad jag hade missat på grund av brist på grundläggande kunskaper
i javascript var att lägga till attributet .attr("href") för att få
med de GET data som satt i länken jag pekade på
nu har jag läst mig att tjuvkoppla en ajax funktion och lärt mig
lite mera javascript
ha det bra
Glöm inte att "Acceptera som slutgiltigt svar" på det inlägg som löste ditt problem.