Som besökare på Hamsterpaj samtycker du till användandet av s.k. cookies för att förbättra din upplevelse hos oss. Jag förstår, ta bort denna ruta!
Annons

Söker jquery script för link till ny sida

Skapad av tok124, 2014-03-17 14:45 i Webbutveckling & Programmering

2 345
13 inlägg
1 poäng
tok124
Visningsbild
P 35 Hjälte 258 inlägg
0
Hej.

Som de står i titeln så söker jag ett jquery script (jag tror iaf att de är jquery som behövs) som ska göra så att när man har laddat upp typ 100 bilder på min sida så ska de komma en link längst ner på sidan där de står 1 och 2 så 1 är första sidan och 2 är en link till nästa sida och där fortsätter de att laddas upp bilder. på sida 2 asså. Laddar även upp en bild för att visa

Forum image

Så typ så vill jag ha det. De kanske även funkar med php så jag vet inte om de är php eller jquery som behövs. vill bara ha denna funktion. och jag vill då ha så att en link kommer upp efter att 100 bilder har laddats upp. så max 100 bilder på varje sida sen kommer de upp en link till sida 2 och sen sida 3 och sida 4 etc beroende på hur mkt bilder man har laddat upp. så har man laddat upp 400 bilder så ska de ju finnas 4 sidor.

Är reklamen ivägen? Logga in eller registrera dig så försvinner den!

pr0n
Visningsbild
P Hjälte 5 588 inlägg
0

Svar till tok124 [Gå till post]:
Det behöver du ingen jQuery för. Du löser det i PHP och SQL.

Ett enkelt exempel.
http://www.queryadmin.com/718/simple-pagination-php-mysql/

Eller om du vill ha en bättre förklaring på hur det fungerar och lite mer avancerat kod.
http://code.tutsplus.com/tutorials/how-to-paginate-data-with-php--net-2928

Ingen status

Guitarman
Visningsbild
P 30 Hjälte 6 576 inlägg
1
Både PHP och Jquery skulle fungera. Rent spontant skulle jag köra på PHP.

T.ex har jag detta i en funktion.
Ett stycke php-kod:

function GetPagination($hits, $page, $max){
$pages = ceil($max/$hits);
$NavPagiation = null;
for($i=1;$i<=$pages;$i++){
$Current = $page == $i ? "current" : null;
if($pages > 1){
$NavPagiation .= "<div class='pagination {$Current}'><a >AddParameter(array('page' => $i)). "'> {$i} </a></div> ";
}
}
return $NavPagiation;
}


AddParameter är en funktion för att lägga till parametrar i URLen
Ett stycke php-kod:

function AddParameter($options=array(), $prepend='?') {
$query = array();
parse_str($_SERVER['QUERY_STRING'], $query);

$query = array_merge($query, $options);

return $prepend . htmlentities(http_build_query($query));
}



Jag kan hämta "pagination-menyn"(vad fan kallar man det på svenska?) genom att kalla på funktionen

GetPagination($hits, $page, $max);

$hits = antal träffar du vill visa per sida.
$page = nuvarande sida den ska visas. Kan bestämmas innan med t.ex
Ett stycke php-kod:

$page = isset($_GET['page']) ? $_GET['page'] : 1;


$max bestämmer jag genom genom att köra en Query med PHP PDO och FetchAll() för att sen räkna resultaten med count()

Tillägg av Guitarman 2014-03-17 15:07

Nu antog jag i och för sig att du har någon form av databas som håller reda på bilderna.

Sen så är det bara hur jag gjorde. Om nått kanske du kan kika på principen. Sen huruvida det här sättet är så bra eller inte vet jag inte :)

Hajj på dajj

tok124
Visningsbild
P 35 Hjälte 258 inlägg
Trådskapare
0
Svar till Guitarman [Gå till post]:
Tack. Jag har en databas. Men bilderna sparas ju inte i databasen. så inget med bilderna har databas connection. använder endast databasen för registrering av konton
tok124
Visningsbild
P 35 Hjälte 258 inlägg
Trådskapare
0
använder en massa jquery och sånt för bilderna som gör så att när man har registrerat ett konto och sedan laddat upp en bild så skapas de en mapp för den användaren som har ett md5 namn så inga mappar får samma namn och de blir svårare att hitta mappen då också. http://pastebin.com/23LjrBDW

så ser scriptet ut för sidan där bilderna laddas upp
tok124
Visningsbild
P 35 Hjälte 258 inlägg
Trådskapare
0

Svar till pr0n [Gå till post]:
hur gör man då om bilderna inte har någon sql connection? om man bara använder databasen för registrering av konton? :) och tack för snabbt svar !

pr0n
Visningsbild
P Hjälte 5 588 inlägg
0

Svar till tok124 [Gå till post]:
Det enklaste är att spara hela länken varje bild databasen när de laddas upp.

Annars kan du kolla upp hur Ajax-anrop fungerar i jQuery, men det blir betydligt mycket mer jobb :)

https://api.jquery.com/jQuery.ajax/

Ingen status

Tvillingen
Visningsbild
P 31 Hjälte 3 117 inlägg
0
Här har du ett sätt att lösa det utan databas. Krävs dock att du hämtar ut sökvägen dit användaren har sina bilder. Nu blev det här kanske inte den finaste koden, men lär vara en start åtminstone.

http://pastebin.com/aACDPWFe

Svar till tok124 [Gå till post]:
Angående att använda md5 för att göra det svårare att hitta mappen är ingen bra anledning. Vill du inte att man ska kunna komma åt mappen gör du helt enkelt så att man inte kan göra det, för det du gör är "security through obscurity" och det är inget bra problem att lösa säkerhet på.

Vill du inte lista innehållet i dina mappar går det att konfigurera i exempelvis apache genom att ändra konfigurationsfilen. Eller lägga till en .htaccess-fil med det här i mappen med bilder.

Options -Indexes

Jag är ond!

tok124
Visningsbild
P 35 Hjälte 258 inlägg
Trådskapare
0

Svar till Tvillingen [Gå till post]:
Tack. Men hur gör jag nu? är de bara att lägga till scriptet längst ner på sidan eller? eller måste jag göra något mer?

Tvillingen
Visningsbild
P 31 Hjälte 3 117 inlägg
0

Svar till tok124 [Gå till post]:
Ja det måste du göra. Vill du ha ajax får du fixa stöd för det och fixa utskriften i förslagsvis formaterat som JSON. Du kommer vilket som behöva lägga till att den hämtar GET-data och skickar med rätt sökväg till funktion.

Funktionen returnerar en lista med bilder, en variabel med sidan den är på just nu och en sista variabel med hur många sidor det finns. Parametrarna står beskrivna innan funktionen, så dessa behöver nog inte förklas. Så hur du väljer att skriva ut datan är helt upp till dig, det väsentliga i koden är funktionen för resterande var endast ett exempel på hur man kan skriva ut datan från funktionen.

En sista sak som är värd att nämna är att man inte bör använda sig av kod man inte förstår vad den gör. Dels för att du inte har koll på säkerhetsbrister, men du kan heller inte ändra på den om du inte vet vad den gör. Så försök förstå funktionen och inte bara kopiera och klistra in för då utvecklas man ingenting och sätter sig i en ganska dålig sits. Förstår du inte funktionen glob() exempelvis tittar du upp den i dokumentationen. Dokumentationen har man alltid nytta av!

Jag är ond!

tok124
Visningsbild
P 35 Hjälte 258 inlägg
Trådskapare
0
Svar till Tvillingen [Gå till post]:
Jag kollar väldigt mycket på w3schools efter guider till alla möjliga språk. oftast är de ganska uppenbart vad funtionerna ska göra efter som att de oftast är engelska ord. har dock funderat på att köpa en php bok och läsa ut den. för jag fattar inte riktigt hur man ska skriva upp allt i php och jag glömmer bort hur saker o ting ska skrivas. men jag ska göra så som du sa att läsa om alla funtioner och inte bara klistra in

tok124
Visningsbild
P 35 Hjälte 258 inlägg
Trådskapare
0
De som jag tycker är jobbigt är att ibland ska de vara ett utropstecken innan man skriver själva funtionen och ibland ska de vara punkter både framför och bakom och ibland ska de vara både single quote och vanlig quote runt funktionerna. och sånt har jag 0 koll på. Men jag tror endå bästa sättet att lära sig är att köpa en bok. Dom som jag känner som är grymma i php har läst en massa böker om det. Men nu när jag endå snackar om de så kan jag ju passa på att fråga om du vet någon bok om php som är bra?
Tvillingen
Visningsbild
P 31 Hjälte 3 117 inlägg
0

Svar till tok124 [Gå till post]:
Boktips har jag ingen koll på alls faktiskt för jag har aldrig läst någon bok om programmering. Fast tror nog att en bok kan vara en bra idé, men försök att hitta någon som är skapligt uppdaterad.

För att svara på det där med att du inte har koll på med utropstecken innan funktion är ganska enkelt. Här har du tre exempel som alla gör samma sak.

Ett stycke php-kod:
//Alternativ ett
if(!$foo) {...}
//Alternativ två
if($foo != true) {...}
//Alternativ tre
if($foo == false) {...}


Angående enkla citationstecken och dubbla citationstecken spelar det ingen roll vad du väljer när du skriver PHP-kod, men jag tycker att det kan vara ganska bra att vara konsekvent. Använder mig därför bara av enkla citationstecken när jag kodar.

Finns dock en skillnad, använder du dig av dubbla citationstecken kan du även stoppa in en variabel mellan dina citationstecknen och innehållet i variabeln skrivs ut. Använder du enkla citationstecken kommer inte innehållet i variabeln skrivas ut, så ett litet exempel.

Ett stycke php-kod:
$foo = 'bar';
echo "test $foo"; //test bar
echo 'test $foo'; //test $foo


Tycker dock att koden blir otydlig om man gör på det sättet. Ett bättre alternativ enligt mig är att göra så här.

Ett stycke php-kod:
$foo = 'bar';
echo "test " . $foo; //test bar
echo 'test ' . $foo; //test bar


En sista sak är att koden körs jättelite och verkligen jättelite snabbare ifall man använder sig av enkla citationstecken och anledningen är av det vi såg innan. Använder man dubbla citationstecken tittar PHP-tolken ifall man har lagt in en variabel medan med enkla så skriver den ut texten som den är skriven.

Hoppas det blev lite klarare åtminstone :)

Jag är ond!


Forum » Datorer & IT » Webbutveckling & Programmering » Söker jquery script för link till ny sida

Ansvariga ordningsvakter:

Användare som läser i den här tråden just nu

1 utloggad

Skriv ett nytt inlägg

Hej! Innan du skriver om ett potentiellt problem så vill vi påminna dig om att du faktiskt inte är ensam. Du är inte onormal och världen kommer inte att gå under, vi lovar! Så slappna av och gilla livet i några minuter - känns det fortfarande hemskt? Skriv gärna ner dina tankar och frågor, vi älskar att hjälpa just dig!

Den här tråden är äldre än Rojks drömtjej!

Det senaste inlägget i den här tråden skrevs för över tre månader sedan. Är du säker på att du vill återuppliva diskussionen? Har du något vettigt att tillföra eller passar din fråga i en ny tråd? Onödiga återupplivningar kommer att låsas så tänk efter en extra gång!

Hjälp

Det här är en hjälpruta

Här får du korta tips och förklaringar om forumet. Välj kapitel i rullningslisten här ovanför.

Rutan uppdateras automagiskt

När du använder funktioner i forumet så visas bra tips här.


Annons
Annons
Annons
Annons