letters plaatsen en opslaan in een raster
Dus je hebt een raster van 3 hoog en 4 breed. In 1 van de 12 vakjes moet de letter A komen en in een ander vakje B.
Voorbeeld:
Nu zou ik deze afbeelding dus willen opslaan in een mysql database aan de hand van een getallenreeks. Elk vakje heeft dus een nummer, links boven is 1 en rechts onder is 12. 0 stelt een leeg vakje voor, 1 stelt een A voor en 2 stelt een B voor. Dus bovenstaande afbeelding zou dan voorgesteld worden door deze reeks getallen:
0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0
Dit wordt vervolgens opgeslagen in de mysql databse met een unieke id aan gekoppeld (vb: 549).
Nu kan deze afbeelding gedeeld worden via de website: site.com/afb?id=549 die dus aan de hand van de reeks getallen de afbeelding opnieuw opbouwt.
eventueel zou ik dan ook willen dat mensen zelf een afbeelding kunnen maken en deze dan kunnen opslaan in de database en deze delen met andere mensen via hun unieke link.
Ik hoop dat ik een beetje heb kunnen uitleggen waar ik naartoe wil en hopelijk kan iemand mij in de juiste richting wijzen om iets dergelijks te maken (ik heb een redelijke kennis van html, css, php en mysql).
Alvast bedankt
Louis
Gewijzigd op 30/04/2015 19:50:47 door Louis Deconinck
1 is je id (549)
2 is een int. 3 omdat de A in veld 3 staat
3 is ook een int, in dit geval 5 omdat de b in 5 staat.
is niet flexibel. dus als het een keer 3 letters worden, of niet per se een A en een b, dan werkt dit niet meer.
Louis Deconinck op 30/04/2015 19:48:12:
en deze delen met andere mensen via hun unieke link.
Louis Deconinck op 30/04/2015 19:48:12:
site.com/afb?id=549
Als de unieke link moeilijk te raden zou moeten zijn moet je deze strategie wellicht herzien.
Als de vakjes alleen uit letters kunnen bestaan (A-Z) dan kun je ook overwegen om gewoon een string van 12 karakters op te slaan, met een speciaal teken voor het lege karakter. Scheelt weer wat in ruimte enzo.
Het helpt misschien ook als je wat meer vertelt over wat je probeert te bereiken / het toepassingsgebied.
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
$string = str_repeat("_", 12);
$string{3} = "A";
$string{5} = "B";
echo $string;
?>
$string = str_repeat("_", 12);
$string{3} = "A";
$string{5} = "B";
echo $string;
?>
Die 3 en 5 kan je gewoon uit een array halen:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$string = str_repeat("_", 12);
$numbers = range(1, 12);
shuffle($numbers);
$string{$numbers[0]} = "A";
$string{$numbers[1]} = "B";
echo $string;
?>
$string = str_repeat("_", 12);
$numbers = range(1, 12);
shuffle($numbers);
$string{$numbers[0]} = "A";
$string{$numbers[1]} = "B";
echo $string;
?>
Gooi dit in een functie:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Gewijzigd op 30/04/2015 20:21:30 door Eddy E
Ivo P op 30/04/2015 20:01:27:
je kunt ook een tabel maken van 3 kolommen
1 is je id (549)
2 is een int. 3 omdat de A in veld 3 staat
3 is ook een int, in dit geval 5 omdat de b in 5 staat.
is niet flexibel. dus als het een keer 3 letters worden, of niet per se een A en een b, dan werkt dit niet meer.
1 is je id (549)
2 is een int. 3 omdat de A in veld 3 staat
3 is ook een int, in dit geval 5 omdat de b in 5 staat.
is niet flexibel. dus als het een keer 3 letters worden, of niet per se een A en een b, dan werkt dit niet meer.
Interessant, dit kan ik inderdaad wel gaan gebruiken, maar wat is het voordeel ten opzicht van mijn manier?
Thomas van den Heuvel op 30/04/2015 20:12:34:
Als de unieke link moeilijk te raden zou moeten zijn moet je deze strategie wellicht herzien.
Als de vakjes alleen uit letters kunnen bestaan (A-Z) dan kun je ook overwegen om gewoon een string van 12 karakters op te slaan, met een speciaal teken voor het lege karakter. Scheelt weer wat in ruimte enzo.
Het helpt misschien ook als je wat meer vertelt over wat je probeert te bereiken / het toepassingsgebied.
Louis Deconinck op 30/04/2015 19:48:12:
en deze delen met andere mensen via hun unieke link.
Louis Deconinck op 30/04/2015 19:48:12:
site.com/afb?id=549
Als de unieke link moeilijk te raden zou moeten zijn moet je deze strategie wellicht herzien.
Als de vakjes alleen uit letters kunnen bestaan (A-Z) dan kun je ook overwegen om gewoon een string van 12 karakters op te slaan, met een speciaal teken voor het lege karakter. Scheelt weer wat in ruimte enzo.
Het helpt misschien ook als je wat meer vertelt over wat je probeert te bereiken / het toepassingsgebied.
Ik heb hieronder de bedoeling uit de doeken gedaan, die letters waren slechts een voorbeeld en vormen dus niet echt de oplossing.
Eddy E op 30/04/2015 20:19:36:
Precies: __A__B______ is dan weer makkelijker.
Die 3 en 5 kan je gewoon uit een array halen:
Gooi dit in een functie:
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
$string = str_repeat("_", 12);
$string{3} = "A";
$string{5} = "B";
echo $string;
?>
$string = str_repeat("_", 12);
$string{3} = "A";
$string{5} = "B";
echo $string;
?>
Die 3 en 5 kan je gewoon uit een array halen:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$string = str_repeat("_", 12);
$numbers = range(1, 12);
shuffle($numbers);
$string{$numbers[0]} = "A";
$string{$numbers[1]} = "B";
echo $string;
?>
$string = str_repeat("_", 12);
$numbers = range(1, 12);
shuffle($numbers);
$string{$numbers[0]} = "A";
$string{$numbers[1]} = "B";
echo $string;
?>
Gooi dit in een functie:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Bedankt, alleen vrees ik dat dit in mijn specifieke geval niet zal werken aangezien ik de letters slechts als voorbeeld had genomen om de situatie wat te vereenvoudigen.
Ik heb het inderdaad nogal abstract voorgesteld, dus ik zal nu wat concreter zijn. Ik wil dus een soortgelijk website (maar eenvoudiger) maken zoals deze http://clashofclansbuilder.com/build maar dan voor het spel King of Thieves.
Dus in dat spel is het de bedoeling om een 'dungeon' te bouwen die de aanvallen van andere dieven die jouw geld komen stelen, kan weerstaan.
Zo'n dungeon ziet er zo uit:
Dus een dungeon bestaat uit 14x8 vakjes en bevat altijd 3 'traps', in dit voorbeeld zijn dat dus 'de vlieg', 'het kanon' en 'de zaag'. Verder kan je ook deur (bestaande uit 4 vakjes) en je schatkist (ook bestaande uit 4 vakjes) verplaatsen.
Eenvoudig voorgesteld ziet dit er dus zo uit:
Nu was mijn idee dus om elke 'trap', deur en schatkist door een cijfer te vervangen en een leeg plaatsje een 0 te maken en dan die lange getallenreeks in mijn database op te slaan en deze weer op te roepen via een een unieke id.
Nu, mijn grootste probleem is eigenlijk hoe ik mensen dus zelf die 'traps' op de juist plaats kan laten plaatsen, hoe deze dan omgevormd worden naar een getallenreeks en hoe ik de afbeelding dan opnieuw opbouw aan de hand van die getallenreeks.
Dit korte filmpje heeft ook min of meer aan hoe zo'n dungeon er in het spel uitziet en hoe hij gebruikt wordt: https://www.youtube.com/watch?v=jqZJjlkLrt0
Alvast bedankt voor alle moeite :)
Louis
Gewijzigd op 30/04/2015 20:42:00 door Louis Deconinck