Mellet Skrevet 3. oktober 2004 Del Skrevet 3. oktober 2004 Jeg har laget en gjestebok i php. Her er koden for selve gjesteboken: <form action="?side=sendgjestebok" method="post"> <div align="left"> <span class=style2>Gjesteboka mi!<br> Navn:<br> <input name="navn" type="text" id="navn" size="15" maxlength="40"><br> E-mail:<br> <input name="email" type="text" id="email" size="20" maxlength="40"><br> Hjemmeside: (ikke fjern http://) <br> <input name="hjemmeside" type="text" id="hjemmeside" value="http://" size="20" maxlength="50"> <br> Melding:<br> <textarea name="melding" cols="30" rows="3" maxlenght="250"></textarea><br> HTML: On <br> <input type="submit" value="Send"> </span> </div> </form> <span class=style1>Innlegg:</span><br><br> <?php include("style.php"); include("conect.php"); $dbcnx = mysql_connect("$host", "$user", "$pass"); if (!$dbcnx) { echo ("$red Kunne ikke koble til database! $end"); exit (); } $sql = mysql_select_db ("$db", $dbcnx); if (!$sql) { echo ("$red Kunne ikke finne databasen. $end"); exit(); } $gjestebok = mysql_query ("SELECT `id`, `navn`, `email`, `hjemmeside`, `melding`, `dato` FROM `gjestebok` WHERE 1 ORDER BY `id` DESC LIMIT 0, 100"); if (!$gjestebok) { echo ("$red Kunne ikke hente ut gjestebok innlegg.<br> Eller gjesteboken er tom. $end"); exit(); } while ($row = mysql_fetch_array($gjestebok) ) { list($year,$month,$day) = explode('-',$row['dato']); $date = date("M-d-Y",mktime(0,0,0,$month,$day,$year)); $email = ($row[email]); $hjemmeside = ($row[hjemmeside]); $text = str_replace(":P", "<img src=\"images/geipe.gif\">", $text); echo (" $blue Navn<u>:</u>$end $normal<a href=mailto:$email>" . $row[navn] . "$end<br></a>$blue Hjemmeside <u>:</u>$end $normal<a href=$hjemmeside target=_blank> $hjemmeside </a> $end<br>$blue Dato <u>:</u>$end $red $date $end<br>$blue Melding <u>:</u>$end<br> $normal" . $row[melding] . "$end<br><br> ");} ?> Og her er koden får php fila som gjør att alt sendes til databasen <?php include("style.php"); if ( $_POST['navn'] && $_POST['email'] && $_POST['hjemmeside'] && $_POST['melding'] ); { $email_sjekk = ereg("^[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+@[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+\.[^@ ()$#><;*%?&+='\{}æøåÆØÅ\.]+$", $_POST['email']); if($email_sjekk == "1"); include("conect.php"); $dbcnx = mysql_connect("$host", "$user", "$pass"); if (!$dbcnx) { echo ("$red Kunne ikke koble til database! $end"); exit (); } $sql = mysql_select_db ("$db", $dbcnx); if (!$sql) {echo ("$red Kunne ikke finne databasen. $end"); exit(); } $info = @mysql_query ("INSERT INTO `gjestebok` (`id`, `navn`, `email`, `hjemmeside`, `melding`, `dato`) VALUES ('', '$navn', '$email', '$hjemmeside', '$melding', CURDATE())"); if(@mysql_affected_rows($info) == "0") { echo("$red Det skjedde en feil! Vennligst gå tilbake og prøv på nytt! $end"); } else { echo("$blue Du har nå skrevet i Gjesteboka.<br>$end $normal <a href=?side=gjestebok>Tilbake..</a> $end"); } } ?> Men når Gjesteboka blir skrevet inn blir det bare tomme rows i databasen.. Noen som ser en feil en eller annen plass? Lenke til kommentar
EirikO Skrevet 3. oktober 2004 Del Skrevet 3. oktober 2004 Hjelper dette? INSERT INTO `gjestebok` (`id`, `navn`, `email`, `hjemmeside`, `melding`, `dato`) VALUES ('', $_POST[navn], '$_POST', '$_POST[hjemmeside]', '$_POST[melding]', CURDATE())" Lenke til kommentar
Mellet Skrevet 3. oktober 2004 Forfatter Del Skrevet 3. oktober 2004 Japp.. Funker nå... Men vet noen hvordan jeg kan gjøre slik att hver gang det skrives ;P blir ;P erstattet med <img src="smiley/geipe.gif"> ..? Lenke til kommentar
Gilbert Skrevet 3. oktober 2004 Del Skrevet 3. oktober 2004 Men vet noen hvordan jeg kan gjøre slik att hver gang det skrives ;Pblir ;P erstattet med <img src="smiley/geipe.gif"> ..? Det er oppe i forumet av og til, søk etter str_replace eller se etter tilsvarende i php-manualen Lenke til kommentar
???????? Skrevet 3. oktober 2004 Del Skrevet 3. oktober 2004 Men vet noen hvordan jeg kan gjøre slik att hver gang det skrives ;Pblir ;P erstattet med <img src="smiley/geipe.gif"> ..? Bruk f.eks. eregi_replace() eller str_ireplace() slik at både ;p og ;P (store og små bokstaver) blir byttet ut. Lenke til kommentar
Mellet Skrevet 3. oktober 2004 Forfatter Del Skrevet 3. oktober 2004 Hmm, kan ikke så mye med str_ireplace() Noen som kan forklare hvordan coden blir da? Å hvor i scriptet den skal plaseres? Lenke til kommentar
???????? Skrevet 3. oktober 2004 Del Skrevet 3. oktober 2004 Der du har: $text = str_replace("", "<img src=\"images/geipe.gif\">", $text); så bare fortsetter du: $text = str_ireplace(";P", "<img src=\"images/geipe.gif\">", $text); Merk, bruk som sagt f.eks. str_ireplace slik at den tar hensyn til både store og små bokstaver. Det kan være lurt å bytte ut teksten før du lagrer det. Lenke til kommentar
Mellet Skrevet 4. oktober 2004 Forfatter Del Skrevet 4. oktober 2004 <?php $text = str_ireplace(";P", "<img src=\"images/geipe.gif\">", $text); include("style.php"); if ( $_POST['navn'] && $_POST['email'] && $_POST['hjemmeside'] && $_POST['melding'] ); { $email_sjekk = ereg("^[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+@[^@ ()$#><;%*?&+='\{}æøåÆØÅ]+\.[^@ ()$#><;*%?&+='\{}æøåÆØÅ\.]+$", $_POST['email']); if($email_sjekk == "1"); include("conect.php"); $dbcnx = mysql_connect("$host", "$user", "$pass"); if (!$dbcnx) { echo ("$red Kunne ikke koble til database! $end"); exit (); } $sql = mysql_select_db ("$db", $dbcnx); if (!$sql) {echo ("$red Kunne ikke finne databasen. $end"); exit(); } $info = @mysql_query ("INSERT INTO `gjestebok` (`id`, `navn`, `email`, `hjemmeside`, `melding`, `dato`) VALUES ('', '$_POST['navn']', '$_POST['email']', '$_POST['hjemmeside']', '$_POST['melding']', CURDATE())"); if(@mysql_affected_rows($info) == "0") { echo("$red Det skjedde en feil! Vennligst gå tilbake og prøv på nytt! $end"); } else { echo("$blue Du har nå skrevet i Gjesteboka.<br>$end $normal <a href=?side=gjestebok>Tilbake..</a> $end"); } } ?> Testet å sette inn: $text = str_ireplace(";P", "<img src=\"images/geipe.gif\">", $text); Men funket ikke kom bare: Fatal error: Call to undefined function: str_ireplace() in /mnt/home3/z/zo/zoot89/public_html/sendgjestebok.php on line 2 Lenke til kommentar
???????? Skrevet 4. oktober 2004 Del Skrevet 4. oktober 2004 Da kjører du ikke PHP 5 ennå... bruk eregi() Lenke til kommentar
Mellet Skrevet 4. oktober 2004 Forfatter Del Skrevet 4. oktober 2004 Altså: $text = eregi(";P", "<img src=\"images/geipe.gif\">", $text); ?????? *tester* Lenke til kommentar
Mellet Skrevet 4. oktober 2004 Forfatter Del Skrevet 4. oktober 2004 Hmm.. Skrev: $text = eregi(";P", "<img src=\"http://home.no.net/zoot89/images/geipe.gif\">", $text); Funket ikke.. ;P ble ikke byttet ut med "<img src=\"http://home.no.net/zoot89/images/geipe.gif\"> når jeg skrev i gjesteboka... Hmm.. Lenke til kommentar
ProXymus Skrevet 6. oktober 2004 Del Skrevet 6. oktober 2004 $text = eregi_replace(";P","<img src=\"http://home.no.net/zoot89/images/geipe.gif\">",$text); 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å