Invoeren trema/apostrof in database

Status
Niet open voor verdere reacties.

HaggisUBF

Nieuwe gebruiker
Lid geworden
1 apr 2012
Berichten
3
Ik dacht dit probleem al opgelost te hebben, maar nu ik hem niet meer op localhost draai maar op de echte host wil hij ze niet meer op de juiste manier meesturen naar de database. De localhost draaide op een innodb, terwijl de echte host hem gaat draaien op een MyIsam aangezien ik daar geen keuze voor innodb heb. De code die ik op de localhost gebruikte ziet er zo uit:

PHP:
<form action="" method="post">
<textarea id="naam" name="hiernaam" onKeyPress="return charLimit2(this)" onKeyUp="return characterCount2(this)"  cols="30" rows="1" onfocus="SetName(this, true);" onblur="SetName(this, false);"></textarea>
<textarea id="comment" name="hiercomment" onKeyPress="return charLimit(this)" onKeyUp="return characterCount(this)"  cols="30" rows="6" maxlength="150" onfocus="SetComment(this, true);" onblur="SetComment(this, false);"></textarea><br>
	<font size="3">&nbsp;Je hebt <strong><span id="charCount">150</span></strong> karakters over.</font><br />
<input type="submit" name="versturen" /> 
 </form>
							
	<?
	$test = "";
	$resultaat = "";
	$dbhost = '';
	$dbuser = '';
	$dbpass = '';

	$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
								
	$dbname = '';
	mysql_select_db($dbname);

	$resultid = mysql_query("SELECT LAST_INSERT_ID() as id
				 FROM reacties");
					 
				$rowid = mysql_fetch_assoc($resultid);
				$idbericht = $rowid['id'];
								
				$datumreactie = date('Y-m-d');
							
				$result = mysql_query("SELECT id 
	         				       FROM weblog 
						       ORDER BY id asc
						       LIMIT 0,1");
								
				$row = mysql_fetch_assoc($result);
				$idbericht = $row['id'];
								
				if (isset($_POST['hiernaam']))    
					{
					 $sqlreactie="INSERT INTO reacties (id, naam, bericht, datum, idbericht)
					              VALUES ('".$idreactie."','".mysql_real_escape_string($_POST['hiernaam'])."','".mysql_real_escape_string($_POST['hiercomment'])."','".$datumreactie."','".$idbericht."')";
								
								
								
					if (!mysql_query($sqlreactie, $conn))
					{
				  		die('Error: test');
					}
				  
					echo "<script type=\"text/javascript\">window.location = '".$_SERVER['REQUEST_URI']."'; </script>";
				}								
								
	?>

Database ziet er dus zo uit:

Opslag Engine: MyIsam
Collatie: UTF8_Bin (ook kolommen)

Het PHP bestand heeft daarnaast ook nog:
HTML:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Iemand die mij weer even op weg kan helpen?

Groeten,

Martijn
 
Probleem is alweer opgelost, had er een stukje code uitgegooid schijnbaar:

PHP:
mysql_query("SET NAMES utf8");

Weer toegevoegd aan het hele script:

PHP:
<div id="reactiegevenform" class="reactiegevenform">
	<form action="" method="post">
	<textarea id="naam" name="hiernaam" onKeyPress="return charLimit2(this)" onKeyUp="return characterCount2(this)"  cols="30" rows="1" onfocus="SetName(this, true);" onblur="SetName(this, false);"></textarea>
	<textarea id="comment" name="hiercomment" onKeyPress="return charLimit(this)" onKeyUp="return characterCount(this)"  cols="30" rows="6" maxlength="150" onfocus="SetComment(this, true);" onblur="SetComment(this, false);"></textarea><br>
		<font size="3">&nbsp;Je hebt <strong><span id="charCount">150</span></strong> karakters over.</font><br />
	<input type="submit" name="versturen" /> 
	</form>
							
	<?

	$test = "";
	$resultaat = "";
	$dbhost = '';
	$dbuser = '';
	$dbpass = '';
								
	//$dbhost = 'localhost';
	//$dbuser = 'root';
								
	$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
								
	$dbname = "";
	//$dbname = "";
								
	mysql_select_db($dbname);
	mysql_query("SET NAMES utf8");
								
	$resultid = mysql_query("SELECT LAST_INSERT_ID() as id
				 FROM reacties");
														 
	$rowid = mysql_fetch_assoc($resultid);
	$idreactie = $rowid['id'];
								
	$datumreactie = date('Y-m-d');
								
	$result = mysql_query("SELECT id 
			       FROM weblog 
			       ORDER BY id asc
			       LIMIT 0,1");
								
	$row = mysql_fetch_assoc($result);
	$idbericht = $row['id'];
								
	if (isset($_POST['hiernaam']))    
	{
		$sqlreactie="INSERT INTO reacties (id, naam, bericht, datum, idbericht)
		VALUES ('".$idreactie."','".mysql_real_escape_string($_POST['hiernaam'])."','".mysql_real_escape_string($_POST['hiercomment'])."','".$datumreactie."','".$idbericht."')";
								
								
								
		if (!mysql_query($sqlreactie, $conn))
		{
			die('Error: test');
		}
								  
		echo "<script type=\"text/javascript\">window.location = '".$_SERVER['REQUEST_URI']."'; </script>";

		}								
								
	?>
</div>
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan