Stressed_out Skrevet 5. januar 2007 Del Skrevet 5. januar 2007 Hallo, prøver å mekke en side hvor jeg kan skrive inn nyheter og evt. laste opp et bilde (til mysql) som vises på hjemmesiden min. Problemet er at jeg suger i php. Jeg har prøvd et tutorial på dette, og jeg får lasta opp bildet til servern min, det ser jeg i ftp programmet, men når jeg kjører view.php som jeg har laget for å se dataen jeg har lagt inn i mysql får jeg ikke opp en døyt. Så om det er selve registreringen av data til msyql db'n som er feil eller at det er feil i view.php fila mi, og dataen egentlig ligger i databasen, veit jeg ikke. Noen som kan hjelpe en stakkar? Mottas med takk. her er formen <form enctype="multipart/form-data" action="add.php" method="POST"> <p>Date: <input type="text" name="date" /> <br /> <br /> Header: <input type="text" name="header" /> </p> <p>Body: <input type="text" name="body" /> </p> <p> Image: <input type="file" name="image" id="image" /> </p> <p> <input name="upload" type="submit" class="box" id="upload" value="upload" /> </p> </form> her er add.php <?php //This is the directory where images will be saved $target = "images/"; $target = $target . basename($_FILES['image']['name']); //This gets all the other information from the form $date=$_POST['date']; $header=$_POST['header']; $body=$_POST['body']; $image=($_FILES['image']['name']); // Connects to your Database mysql_connect("localhost", "brukernavn", "passord") or die(mysql_error()); mysql_select_db("pgrimcen_publisher") or die(mysql_error()); //Writes the information to the database mysql_query("INSERT INTO 'publisher' VALUES('$date', '$header', '$body', '$image')"); //Writes the photo to the server if(move_uploaded_file($_FILES['image']['tmp_name'], $target)) { //Tells you if its all ok echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded, and your information has been added to the directory"; } else { //Gives and error if its not echo "Sorry, there was a problem uploading your file."; } ?> og her er view.php <?php // Connects to your Database mysql_connect("localhost", "brukernavn", "passord") or die(mysql_error()); mysql_select_db("pgrimcen_publisher") or die(mysql_error()); //Retrieves data from MySQL $data = mysql_query("SELECT * FROM publisher") or die(mysql_error()); //Puts it into an array while($info = mysql_fetch_array( $data )); //Outputs the image and other data Echo "<img src=webadresse".$info['image'] ."> <br>"; Echo "<b>Date:</b> ".$info['date'] . "<br> "; Echo "<b>Header:</b> ".$info['header'] . " <br>"; Echo "<b>Body:</b> ".$info['body'] . " <hr>"; ?> Lenke til kommentar
CruellaDeVille Skrevet 5. januar 2007 Del Skrevet 5. januar 2007 Hallo,prøver å mekke en side hvor jeg kan skrive inn nyheter og evt. laste opp et bilde (til mysql) som vises på hjemmesiden min. Problemet er at jeg suger i php. Jeg har prøvd et tutorial på dette, og jeg får lasta opp bildet til servern min, det ser jeg i ftp programmet, men når jeg kjører view.php som jeg har laget for å se dataen jeg har lagt inn i mysql får jeg ikke opp en døyt. Så om det er selve registreringen av data til msyql db'n som er feil eller at det er feil i view.php fila mi, og dataen egentlig ligger i databasen, veit jeg ikke. Noen som kan hjelpe en stakkar? Mottas med takk. her er formen <form enctype="multipart/form-data" action="add.php" method="POST"> <p>Date: <input type="text" name="date" /> <br /> <br /> Header: <input type="text" name="header" /> </p> <p>Body: <input type="text" name="body" /> </p> <p> Image: <input type="file" name="image" id="image" /> </p> <p> <input name="upload" type="submit" class="box" id="upload" value="upload" /> </p> </form> her er add.php <?php //This is the directory where images will be saved $target = "images/"; $target = $target . basename($_FILES['image']['name']); //This gets all the other information from the form $date=$_POST['date']; $header=$_POST['header']; $body=$_POST['body']; $image=($_FILES['image']['name']); // Connects to your Database mysql_connect("localhost", "brukernavn", "passord") or die(mysql_error()); mysql_select_db("pgrimcen_publisher") or die(mysql_error()); //Writes the information to the database mysql_query("INSERT INTO 'publisher' VALUES('$date', '$header', '$body', '$image')"); //Writes the photo to the server if(move_uploaded_file($_FILES['image']['tmp_name'], $target)) { //Tells you if its all ok echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded, and your information has been added to the directory"; } else { //Gives and error if its not echo "Sorry, there was a problem uploading your file."; } ?> og her er view.php <?php // Connects to your Database mysql_connect("localhost", "brukernavn", "passord") or die(mysql_error()); mysql_select_db("pgrimcen_publisher") or die(mysql_error()); //Retrieves data from MySQL $data = mysql_query("SELECT * FROM publisher") or die(mysql_error()); //Puts it into an array while($info = mysql_fetch_array( $data )); //Outputs the image and other data Echo "<img src=webadresse".$info['image'] ."> <br>"; Echo "<b>Date:</b> ".$info['date'] . "<br> "; Echo "<b>Header:</b> ".$info['header'] . " <br>"; Echo "<b>Body:</b> ".$info['body'] . " <hr>"; ?> 7649294[/snapback] Du må vise til sti før du printer bilde ut navn, eks hvis du har lagret bildet i images/ må du referere til <img src="images/".$info['image']." /> Noe lignende har jeg gjort her: http://nibbler.no/files/gallery/upload.php Lenke til kommentar
Stressed_out Skrevet 5. januar 2007 Forfatter Del Skrevet 5. januar 2007 (endret) Du må vise til sti før du printer bilde ut navn, eks hvis du har lagret bildet i images/ må du referere til <img src="images/".$info['image']." /> Noe lignende har jeg gjort her: http://nibbler.no/files/gallery/upload.php 7649330[/snapback] Takk for svar, Cruella! Jeg har en referanse til mappen. Det står i nederste bolk i view.php fila.. (webadresse, det står egentlig webadressen til bildemappa). Problemet er at jeg hverken får fram bildet, eller noe tekst som jeg også la inn i formen. Endret 5. januar 2007 av Stressed_out Lenke til kommentar
Vampen Skrevet 7. januar 2007 Del Skrevet 7. januar 2007 (endret) Prøv å legge til hvor du vil legge verdiene. Slik har jeg gjort det: $sql = "INSERT INTO publisher (date,header,body,image) VALUES ( " . "'" . $_POST['date'] . "', " . "'" . $_POST['header'] . "', " . "'" . $_POST['body'] . "', " . "'" . $image . "'" . ")"; Som du ser her trenger du ikke legge verdiene du får fra skjemaet fra forrige side i variabler for så å putte dem i SQL setningen. Her tar vi å legge $_POST variablene direkte i SQL setningen. Ikke at det har noe å si, men er raskere. Endret 7. januar 2007 av Vampen Lenke til kommentar
AlecTBM Skrevet 7. januar 2007 Del Skrevet 7. januar 2007 kjappere kanjkse, men usikkert er det. Ville ikke hatt noe sånt på sia mi, spess ikke i en query. det er er et perfekt sted man kan XSS Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå