Skrevet tor. d. 04. juni 2009 kl. 18:06:46| #1
php.ini er PHP's konfigurations fil.
Alle PHP installation har vist saadan en.
Men der er kun en per installation, saa paa et wb hotel administreres den af web hotellet.
Men du kan override i din .htaccess fil.
Skrevet tor. d. 04. juni 2009 kl. 18:06:56| #2
php.ini er den fil, hvor standard settings for PHP bliver sat, nogen værdier kan man ændre med
ini_set ( string $varname , string $newvalue )
Mens andre er låst, jeg vil skyde på at du ikke kan ændre ret meget hos b-one.
Skrevet tor. d. 04. juni 2009 kl. 18:09:11| #3
Du kan se et eks. på en standard php.ini her:
http://cvs.php.net/ (...)Bemærk, som arne_v skriver er det b-one der står for opsætning af denne fil.
Skrevet tor. d. 04. juni 2009 kl. 19:21:18| #4
smider du også et svar arne_v
Hvad er alternativet til at anvende et webhotel, hvis der er et alternativ?
Skrevet tor. d. 04. juni 2009 kl. 19:30:15| #5
Overordnet set er det ikke noget du skal bekymre dig; dit spørgsmål afslører dit stadie.
Som de andre er inde på er det en fil der fortæller PHP hvordan den skal agere på forskellige ting; f.eks. mail() funktionen. Den skal vide hvilken SMTP server den skal bruge for at kunne sende mailen. Og for at PHP kan benytte sig af MySQL databasen, skal PHP jo vide hvilken extension der skal indlæses for at du får funktionaliteterne - altså kort sagt: php.ini er den fil som PHP bruger for at fungere.
Hvis du støder på en udfordring i PHP du ikke kan få løst, som du søger løsning på via f.eks. google, vil du måske støde på en forklaring der kan medføre rettelser til php.ini. Og som tjaz er inde på, kan nogle af de indstillinger ændres i PHP med funktion ini_set(), noget kan ændres via .htaccess som arne_v nævner, mens resten kun kan ændres hvis du har adgang til selve php.ini filen.
Det var svar på dit første spørgsmål.
Svaret på dit andet spørgsmål er nej, du skal ikke selv lave den. Når PHP installeres på serveren vil der typisk være et standard setup som din udbyder tilpasser - og den ligger du under for.
Skrevet tor. d. 04. juni 2009 kl. 19:39:29| #6
Alternativerne til webhoteller kunne være virtuelle server eller dedikerede servere. Typisk skal du have indgående kendskab til det servermiljø du kommer til at arbejde i, for du kommer til at styre mange af tingene selv; medmindre du betaler dig fra det.
Skrevet tor. d. 04. juni 2009 kl. 19:40:47| #7
Tak for dit svar repox. men jg ville nu stadig godt vide hvad alternativet til et webhotel er...
Årsagn til at jeg spørger til ini-filen er at jeg ikke kan få sessions til at fungere på min side efter jeg har sendt en bruger videre til an anden side. Jeg bruger session_start() som det første i begge filer, men variable oprettet i en fil er ikke tilgængelig på andre sider, og så tænkte jeg om det var en opsætning i ini-filen der manglede....
Skrevet tor. d. 04. juni 2009 kl. 19:49:10| #8
Jeg tror ikke du skal regne med at b-one har en fejlopsætning hvad sessions angår. Det tyder på du har et kodemæssigt rod.
Kan du eventuelt henvise til eksemplet hvor det ikke virker?
Eventuelt lav to filer som jeg skriver herunder og så send et link til dem:
session1.php:
<?php
session_start();
$_SESSION["foo"] = "bar";
?>
session2.php:
<?php
session_start();
echo $_SESSION["foo"];
?>
Skrevet tor. d. 04. juni 2009 kl. 20:11:21| #9
Svar.
Det mest oplaget alternativ til et web hotel var en virtual private server.
Men jeg tror heller ikke at dit session problem skyldes php.ini !
Skrevet tor. d. 04. juni 2009 kl. 20:15:02| #10
Jeg vil helst ikke poste et link her.
Men jeg vi gerne poste koden.
Jeg laver 3 filer:
1. Login form
2. Validering af data i MySQL
3. PHP fil login forsøg
a. Vis data til godkendt login
b. Vis data efter ugyldgigt login
Jeg kan ikke få det til at virke så jeg prøver i stedet bare at
oprette en session variabel i (2) og så tjekke den i (3). Altså alt MySQL er fjernet.
---------------------------------------------------------------
Koden til (1)
<html>
<head>
<title>Test</title>
</head>
<body>
<form method="post" action="tjekBruger.php">
Username: <input type="text" name="username"/><br/><br/>
Password: <input type="password" name="password"/><br/><br/>
<input type="submit" value ="Login" />
</form>
</body>
</html>
---------------------------------------------------------------
Koden til (2) -> tjekBruger.php
<?php
session_start();
?>
<html>
<head>
<?php
$side = "visData.php";
$_SESSION['OK'] = 1;
echo "<META HTTP-EQUIV=\"REFRESH\" CONTENT=\"1; URL=$page\">";
?>
</head>
<body>
</body>
</html>
---------------------------------------------------------------
Koden til (3) --> visData.php
<?php
session_start();
?>
<html>
<head>
<?php
if(isset($_SESSION['OK']))
{
echo 'OK';
}
?>
</head>
</html>
--------------------------------------------------------------
I (2) har jeg forsøgt at placere scriptet både i <head> og i <body> men det virker ikke. Jeg er ikke helt sikker på hvor det skal placeres. For mig ville det være naturligt at placere i <body>
Skrevet tor. d. 04. juni 2009 kl. 20:23:54| #11
danieltruelsen@hotmail.com
Tilføj mig på MSN, så kan jeg måske hjælpe dig med et alternativ
Skrevet tor. d. 04. juni 2009 kl. 20:24:25| #12
Jeg gider ikke rode med noget jeg ikke kan teste. Jeg har givet dig koden til to filer som kan teste dine sessions. Hvis du kan få dem til at virke, så er det den eksisterende kode du har lavet der fejler.
Skrevet tor. d. 04. juni 2009 kl. 20:25:27| #13
@tfswebguy:
Er der noget i vejen med at delagtiggøre os andre i løsningen? Det kunne jo være der var andre der fik netop samme problem som gerne ville se hvad løsningen var.
Skrevet tor. d. 04. juni 2009 kl. 20:37:30| #14
Lige et spørgsmål repox.
Skal der ikke være andet indhold i php filerne end
session1.php:
<?php
session_start();
$_SESSION["foo"] = "bar";
?>
session2.php:
<?php
session_start();
echo $_SESSION["foo"];
?>
også bare skrive URL direkte??
Skrevet tor. d. 04. juni 2009 kl. 20:39:35| #15
Nope.
Når du har oprettet de to filer besøger du først session1.php og derefter session2.php
Hvis du på session2.php får en teksten 'bar' frem, så virker dine sessions som de skal.
Skrevet tor. d. 04. juni 2009 kl. 20:41:48| #16
og der er blank skærm....
Skrevet tor. d. 04. juni 2009 kl. 20:45:59| #17
Så er det nu du tager support kontakt til b-one og viser dem at du har eksemplerne session1.php og session2.php forklarer dem at lortet ikke virker. Så kan de som regel fortælle hvorfor - det tyder ikke længere på at det er et problem med din kode (alene).
Skrevet tor. d. 04. juni 2009 kl. 20:49:39| #18
Skrevet tor. d. 04. juni 2009 kl. 21:09:08| #19
Mit alternativ var bare (Når han alligevel efterspørger det), plads på en server jeg har stående, hvor sessions virker (Jeg bruger dem selv) og han altid kan komme i hurtig personlig kontakt ved fejl og mangler
Skrevet tor. d. 04. juni 2009 kl. 21:58:52| #20
Hey
Jeg har nu haft kontakt til
www.one.com via live chat.
Det viste sig at min editor(notepad++) har tilføjet nogle ekstra karakterer i mit script, og de anbefaler at man altid bruger den de stiller tilrådighed....
Skrevet tor. d. 04. juni 2009 kl. 22:03:16| #21
Repox snider du også et svar....
Skrevet tor. d. 04. juni 2009 kl. 22:05:31| #22
Er det ikke bare at rette det i nogle indstillinger for Notepad++?
Ellers ville jeg da anbefale dig at skifte editor.
Hvilken editor stiller one.com til rådighed?
Skrevet tor. d. 04. juni 2009 kl. 22:15:10| #23
Deres editor er tilgængelig via deres controlpanel når man logger ind. Jeg synes ikke den er specielt god. Jeg skal have undersøgt instillingerne for notepad++ da jeg synes den er rigtig god.
Fx skelner one's editor ikke på reserverede ord.
Skrevet tor. d. 04. juni 2009 kl. 22:16:26| #24
Når jeg åbner filen via deres editor ser din kode således ud
<?php
session_start();
echo $_SESSION["foo"];
?>
hvor det jo er tydeligt hvori fejlen består....
Skrevet tor. d. 04. juni 2009 kl. 22:29:57| #25
Altså, one's editor er en online baseret editor? Nej, tak til mig ihvertfald.
Ja, det du oplever et at Notepad sætter BOM ind som det første i filen.
Du burde kunne finde nogle indstillinger hvor du kan vælge UTF-8 without BOM. Ellers ville jeg anbefale dig at anskaffe dig en ordentlig editor ;)
Skrevet tor. d. 04. juni 2009 kl. 22:56:12| #26
Okay. Jeg havde indstillet den til UTF-8 og har nu ændret det.
Jeg takker mange gange. Nu skriver du at du anbefaler at jeg anvender en ordentlig editor, og så kunne jeg godt tænke mig et godt forslag:-)
Jeg anvender bare notepad++ fordi det er den bedste jeg kender, og så er den gratis.....
Skrevet tor. d. 04. juni 2009 kl. 22:56:35| #27
smider du lige et svar også
Skrevet tor. d. 04. juni 2009 kl. 23:24:06| #28
Jeg har prøvet en del forskellige editorer, heribland notepad++. Eclipse og Zend Editor kan også nævnes. Men jeg er landet på UltraEdit. Den er dog ikke gratis. Men det er den bedste editor jeg nogensinde har haft.
Skrevet tor. d. 04. juni 2009 kl. 23:44:55| #29
Jeg kan varmt anbefale Komodo Edit (findes både til win, linux og mac).
Skrevet tor. d. 04. juni 2009 kl. 23:46:36| #30
Komodo Edit er gratis - findes dog også i en betalings version, men har ikke så mange ekstra nice features så det kan betale sig.
Hvis du vil have en betalings udgave, kan jeg også varmt anbefale PHPed (den bedste php editor jeg har prøvet til win)
Skrevet fre. d. 05. juni 2009 kl. 09:45:44| #31
Hey. Nu ville jeg jo godt give jer alle tre point, men er der ikke mulighed for at give jer mer end 10 point hver?
Skrevet fre. d. 05. juni 2009 kl. 12:58:33| #32
Skrevet fre. d. 05. juni 2009 kl. 14:13:14| #33
Lige en sidste ting:
Du bør i din kontrolpanel slå fejlbeskeder til.
Hvis du have gjort det, ville det have taget langt kortere tid at finde fejlen.