webForumDet fria alternativet

Tips på sätt att förbättra mitt script?

PHP

10 svar · 865 visningar · startad av Simpa

Medlem sedan aug. 20002 992 inlägg
Frågan#1

Hejsan,
Började med lite PHP kodning för något år sedan, men la det på hyllan innan jag hann lära mig det ordentligt, kunde grunderna ungefär, och hann inte komma till MySQL biten!

Började iallafall med ett litet script som skulle fungera som en shoutoutbox, och vart väl nästan färdig med det, tänkte damma av det och se om jag kan förbättra det lite, så att det kanske kan läggas ut på något forum om någon annan kan dra nytta av det!

Det är alltså en shoutoutbox som är gjord med en textfil som databas, jag vet att detta inte är optimalt och att den borde vara gjord i MySQL, tanken var att jag/folk som inte kunde MySQL lätt skulle kunnat utnyttja scriptet, det är uppdelat på lite onödigt många sidor just nu, jag borde väl kunna få in allt på en och samma sida(?), samt en del onödig kod? säkerhetsbrister? fel i övrigt?

Tar gärna emot alla tips jag kan få på hur jag kan förbättra det!

Det är som sagt lite onödigt många filer, så jag lägger in allt i en zipfil, men om det är bättre om jag skriver ut all kod här så kan jag göra det!

Shoutoutbox:
http://icow.se/komp/

Rar för att ladda ner filerna:
http://icow.se/shoutoutbox.rar
Bifogar även dessa i inlägget.

Några frågor jag har sådär på rak arm..

Varför skiljer mitt webbhotell (One.com) på stora och små bokstäver, när man skriver en address i addressfältet, gör alla webbhotell detta?
Tex.
http://icow.se/komp/ fungerar bra!
men
http://icow.se/Komp/ så fungerar det inte som det ska..

Det mest optimala, om det är värt att dela med sig av scriptet, måste väl vara att få in all kod på en sida, max två va? annars uppfattas det nog som väldigt rörigt och folk förstår inte hur dem ska nyttja shoutoutboxen.. Har nu valt att använda mig av en iframe där jag visar inläggen, då jag vill att det ska vara en bestämd storlek på boxen oavsett hur mycket folk skriver. "Scrollande layers" kanske är ett altenativ, men är det inte väldigt mycket kod då och anledning till att jag gör det försvinner? Dålig kunskap på att arbeta med layers, någon bra sida där man kan läsa på? även om scrollfunktion!

Har även märkt att om jag väljer "Visa 10 inlägg" och sedan går tillbaka till "Visa 5 inlägg" så blir min shoutoutbox tom, någon som kommer på vad detta kan bero på?

Märkte precis att det vart väldigt mycket text och frågor i detta inlägg, vilket brukar skrämma bort folk. Får hoppas att några orkade ta sig igenom hela :)

Tack på förhand!

/Simon

Medlem sedan aug. 20002 992 inlägg
#2

Ett av problemen lösta, det som gällde att jag fick en "blank sida" då jag gick ifrån 10 inlägg till 5 inlägg, det var bara en länkning som strulade!

Och hörde på annat håll att nästan alla webbhotell skiljer på stora och små bokstäver, så jag får helt enkelt bara passa mig från att ge mappnamn och filnamn stora bokstäver!

Medlem sedan aug. 20002 992 inlägg
#3

Jag gör om, gör rätt, skippar iframen och försöker lägga in allting på max två sidor, samt ta bort onödig kod och göra den lite mer lätt att läsa!

Något jag är nyfiken på är om det finns några stora säkerhetsbrister i min kod?

Medlem sedan juni 20014 290 inlägg
#4

Simpa skrev:

Shoutoutbox:
http://icow.se/komp/

I FireFox får jag valet hur många som skall visas mitt i boxen, se den bifogade bilden.

Simpa skrev:

Varför skiljer mitt webbhotell (One.com) på stora och små bokstäver, när man skriver en address i addressfältet, gör alla webbhotell detta?
Tex.
http://icow.se/komp/ fungerar bra!
men
http://icow.se/Komp/ så fungerar det inte som det ska..

Beror på vilket OS som webhotellet använder på den servern du ligger på.

Är det en *nix maskin så är katalog och filnamn känslig för stora och små bokstäver, medans ex. windows maskiner inte är det. Det bästa och säkraste är att skriva länkarna exakt som katalogen och/eller filen heter.

aaa.PNG
Medlem sedan aug. 20002 992 inlägg
#5

Tack för hjälpen!

Håller på och gör om sidan så förhoppningsvis så ska den se bra ut i FireFox efter, kommer en uppdaterad version av designen så fort jag är klar, själva kodningen kommer dock vara snarlik, förrutom några små saker..

Medlem sedan aug. 20002 992 inlägg
#6

Uppdaterat scriptet

Sådär, har uppdaterat scriptet nu och vill hemskt gärna ha kritik och tips på hur det kan förbättras!

http://icow.se/shoutout11/index.php

http://icow.se/shoutout11/shoutout11.rar

Alla tips på design och kod tas gärna emot, om ni kollade på koden förrut så är den nog mycket mera lätt att läsa nu, alla tankar är välkommna :)

/Simon

Medlem sedan juni 2009920 inlägg
#7

Borde stå "de" istället för "dem"! Ena bestämd form, andra inte (tror jag :))

Medlem sedan juli 20023 617 inlägg
#8

Hello!

Knapparna hamnar lite utanför. Lägg till lite padding-bottom och ta bort height på "writebox".

Texten är på sina ställen plågsamt liten...

Du drar igång ett javascript när man skriver ett meddelande. Skulle du inte kunna radera meddelandefältet i formuläret på samma gång?

Bra jobbat!

Shout.png
Medlem sedan aug. 20002 992 inlägg
#9

Tack fiddler!

Har gjort om lite i designen nu, samt ändrat texten, förhoppningsvis fixat så det ser lite bättre ut!

Även fixat så att sidan laddas om när man stänger ner rutan, detta fanns från början men råkade plocka bort det då jag försökte minimera koden lite.. :)

Någon som har några andra tankar?

Någon som vet varför "scrollen" försvinner då jag försöker se sidan i Safari på min iPhone, så enkelt som att den inte har stöd?

Medlem sedan juli 20023 617 inlägg
#10

"I'm back!" blev lite lustigt... ;)

Medlem sedan aug. 20002 992 inlägg
#11

Upptäckte det, försökte lösa det men lyckades inte..

	$utan = htmlspecialchars($tyck, ENT_QUOTES);
	$utan = trim($utan);
	$utan = str_replace("\r\n", "", $utan); 
	$utan = htmlentities($utan, ENT_QUOTES, "ISO8859-15");

Detta kör jag just nu för ta bort ogiltliga tecken, ersätta åäö och dyl,
var när jag la till htmlentities som felet uppstod, tror det är ENT_QUOTES som gör det? testat EN_NOQUOTES och dyl, men samma fel då man skriver '

' omvandlas till ' och skrivs inte alltså ut rätt på sidan

Kan det ha att göra med

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

Vad gör jag för fel?

Har även ett HTML problem då jag inte lyckas centrera tabellen med "Visa de 5 senaste inläggen" och "Totalt 7 inlägg", känns som jag testat det mesta just nu..

	.antal 
	{
		border-top: none;
		border-left: #d5d5d5 1px solid;
		border-right: #d5d5d5 1px solid;
		border-bottom: #d5d5d5 1px solid;
		width: 190px;
		height: 40px;
		background-color: #FFFFFF;
		text-align: center;
		margin: 0 auto;
		font-family: Verdana; 
		font-size: 11px; 
		padding-top: 5px;
	}
div class="antal">
 
 <table border="0">
		<tr>
			<td>
				Visa de
			</td>
			
			<td>	
				
	<form method="get" action="">
 
	<select name="antal_visa"  class="drop" onchange="window.open(this.options[this.selectedIndex].value,'_top')"> 
 
	<option selected>5<option value="index.php?antal=10">10<option value="index.php?antal=25">25<option value="index.php?antal=alla">alla
	</select>
 
	</form>
 
	</td>
	
	<td>
	senaste!
	</td>
		</tr>
		<tr>
			<td colspan="3">
	Totalt 7 inl&auml;gg!			</td>
		</tr>
	</table>
 
</div>
402 ms totalt · 4 externa anrop · v20260731065814-full.2f471f9e
126 ms — deklarationer (db)
126 ms — hämta statistik (db)
133 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)