blog script fout..

Status
Niet open voor verdere reacties.

dimako

Gebruiker
Lid geworden
19 mei 2007
Berichten
6
hallo allemaal,

ik heb een probleempje.. ik heb vandaag wat gerotzooid met en blog scriptje...
het is allemaal redelijk goed gegaan..
maar ik ben tegen het volgende aan gelopen..
als ik of iemand anders wil reageren op een blog dan krijgt die gene of ikzelf een foutmelding en dat is deze:

Reactie toevoegen

Je reactie kon niet toegevoegd worden. Probeer het opnieuw.

INSERT INTO weblog_reacties (naam, email, tekst, ipadres, datum, blog_id) VALUES ('asdasd', 'asdasd', 'asdasd', '212.45.32.209', '1179601126', '9')

ik ben nog niet so bekend met php,,, miss is het wel iets heel kleins..ik weet het niet..
wie zou mij kunnen helpen hoe ik dat kan veranderen?!

Mvg. Harmen
 
Je zegt dat je een script van een ander hebt gebruikt. Dan download je die weer opnieuw en overschrijf je de bestanden.

De database gegevens blijven wel bestaan, je zult alleen de config handmatig moeten wijzigen.

Overigens kunnen we je beter helpen wanneer we een stuk php-code hebben. Deze kun je plaatsen tussen de
PHP:
{hier de code}
.
 
het zou dan denk ik hier aan moeten liggen...
zou het ook kunnen dat ik de tabel gegevens in phpmyadmin verkeerd heb ingevoerd?!?!

PHP:
            if($_SERVER['REQUEST_METHOD'] == "POST"){
            // Iemand heeft het formulier ingevuld en dus gaan we proberen de reactie op te slaan
                // Eerst kijken of alle velden wel zijn ingevuld
                if($_POST['naam'] && $_POST['email'] && $_POST['tekst']){
                
                    $insert = "INSERT INTO weblog_reacties (naam, email, tekst, ipadres, datum, blog_id) VALUES ('" . htmlentities($_POST['naam']) . "', '" . htmlentities($_POST['email']) . "', '" . htmlentities($_POST['tekst']) . "', '" . $_SERVER['REMOTE_ADDR'] . "', '" . time() . "', '" . $_GET['blog'] . "')";
                    $query4 = mysql_query($insert);
                    
                    if($query4){
                    
                        echo '<script>window.location="?blog=' . $_GET['blog'] . '"</script>';
                        echo '<span class="sub_kop">Reactie toevoegen</span><br /><br />';
                        echo 'Je reactie is toegevoegd. Als het goed is wordt deze pagina zo vernieuwd.';
                        
                    }else{
                    
                        echo '<span class="sub_kop">Reactie toevoegen</span><br /><br />';
                        echo 'Je reactie kon niet toegevoegd worden. Probeer het opnieuw.<br /><br />';
                        echo $insert;
                        
                    }
                }else{
                    
                    echo '<span class="sub_kop">Reactie toevoegen</span><br /><br />';
                    echo 'Je hebt niet alle velden ingevuld. Ga terug.';
                    
                }
                                    
            }else{
            
            echo '<span class="sub_kop">Plaats jou reactie</span><br /><br />';
            
            if($data['reageren'] == 0){
            // In het admin panel is het mogelijk om de reageer functie uit te schakelen bij een blog
            
                // We gaan nu gewoon even HTML doen ;-)
                ?>    
                <form action="" method="post">
                <table width="100%">
                    <tr>
                        <td><b>Naam</b></td>
                        <td><input type="text" name="naam" /></td>
                    </tr>
                    <tr>
                        <td><b>E-mail</b></td>
                        <td><input type="text" name="email"></td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td style="vertical-align:top;"><b>Reactie</b></td>
                        <td><textarea cols="40" rows="5" name="tekst"></textarea></td>
                    </tr>
                    <tr>
                        <td></td>
                        <td><input type="submit" value="Reactie plaatsen!"></td>
                    </tr>
                </table>
                </form>
                <?php
                
                }else{
                
                    echo '<blockquote><span style="color:#FF0000; font-weight:bold;">Reageren op deze blog is niet mogelijk.</span></blockquote>';
                    
                }
            
            }
            
            echo '<br /><hr /><br />';
            
            echo '<a href="?blog=overzicht" style="font-weight:bold;">&laquo; Terug naar het overzicht</a>';
        
    }else{
        // Blog bestaat niet. Geef foutmelding
        
        echo '<span class="titel_kop">Blog niet gevonden</span><br /><br />';
        echo 'De blog die je zocht, bestaat niet. <a href="?blog=overzicht">Ga terug.</a>';
        
    }
}else{
 
Volgens mij doe je iets dubbel...

PHP:
if($_POST['naam'] && $_POST['email'] && $_POST['tekst'])
{ 
  $insert = "INSERT INTO weblog_reacties (naam, email, tekst, ipadres, datum, blog_id)
  VALUES ('" . htmlentities($_POST['naam']) . "', '" . htmlentities($_POST['email']) . "', '" . htmlentities($_POST['tekst']) . "', '" . $_SERVER['REMOTE_ADDR'] . "', '" . time() . "', '" . $_GET['blog'] . "')";

  if(mysql_query($insert) or die (mysql_error()))
  { 
    echo '<script>window.location="?blog=' . $_GET['blog'] . '"</script>'; 
    echo '<span class="sub_kop">Reactie toevoegen</span><br /><br />'; 
    echo 'Je reactie is toegevoegd. Als het goed is wordt deze pagina zo vernieuwd.'; 
  }
  else
  { 
    echo '<span class="sub_kop">Reactie toevoegen</span><br /><br />'; 
    echo 'Je reactie kon niet toegevoegd worden. Probeer het opnieuw.<br /><br />'; 
    echo $insert; 
  }
}
else
{ 
  echo '<span class="sub_kop">Reactie toevoegen</span><br /><br />'; 
  echo 'Je hebt niet alle velden ingevuld. Ga terug.'; 
}

Bovenstaande code is aangepast en je moet hem zelf even op de goede plaats weer terugzetten.

Je deed eerst
PHP:
$query4 = mysql_query($insert);
if($query4)
{
  //etc
Waarschijnlijk kent hij na de uitvoering de variabele niet.
 
als ik die aanpassing van jou doe...
dan is alles weg..

doe ik dan iets fout offe..*-)
 
Dan doe je iets fout. Je hebt wel de rest behouden en niet alleen de bovenstaande code ingevuld?

aangepaste script!
(ik krijg het idee dat er nog meer bij dit script hoort, zie laatste deel van dit bericht)
PHP:
<?
if($_SERVER['REQUEST_METHOD'] == "POST")
{ 
  // Iemand heeft het formulier ingevuld en dus gaan we proberen de reactie op te slaan 
  // Eerst kijken of alle velden wel zijn ingevuld 
  if($_POST['naam'] && $_POST['email'] && $_POST['tekst'])
  {              
    $insert = "INSERT INTO weblog_reacties (naam, email, tekst, ipadres, datum, blog_id)
    VALUES ('" . htmlentities($_POST['naam']) . "', '" . htmlentities($_POST['email']) . "', '" . htmlentities($_POST['tekst']) . "', '" . $_SERVER['REMOTE_ADDR'] . "', '" . time() . "', '" . $_GET['blog'] . "')"; 
                     
    if(mysql_query($insert))
    { 
      echo '<script>window.location="?blog=' . $_GET['blog'] . '"</script>'; 
      echo '<span class="sub_kop">Reactie toevoegen</span><br /><br />'; 
      echo 'Je reactie is toegevoegd. Als het goed is wordt deze pagina zo vernieuwd.'; 
    }
    else
    { 
      echo '<span class="sub_kop">Reactie toevoegen</span><br /><br />'; 
      echo 'Je reactie kon niet toegevoegd worden. Probeer het opnieuw.<br /><br />'; 
      echo $insert; 
    } 
  }
  else
  { 
    echo '<span class="sub_kop">Reactie toevoegen</span><br /><br />'; 
    echo 'Je hebt niet alle velden ingevuld. Ga terug.'; 
  } 
}
else
{ 
  echo '<span class="sub_kop">Plaats jou reactie</span><br /><br />'; 
  if($data['reageren'] == 0)
  {
    // In het admin panel is het mogelijk om de reageer functie uit te schakelen bij een blog 
     // We gaan nu gewoon even HTML doen ;-) 
    ?>     
    <form action="" method="post"> 
      <table width="100%"> 
        <tr> 
          <td><b>Naam</b></td> 
          <td><input type="text" name="naam" /></td> 
        </tr> 
        <tr> 
          <td><b>E-mail</b></td> 
          <td><input type="text" name="email"></td> 
        </tr> 
        <tr> 
          <td>&nbsp;</td> 
        </tr> 
        <tr> 
          <td style="vertical-align:top;"><b>Reactie</b></td> 
          <td><textarea cols="40" rows="5" name="tekst"></textarea></td> 
        </tr> 
        <tr> 
          <td>&nbsp;</td> 
          <td><input type="submit" value="Reactie plaatsen!"></td> 
        </tr> 
      </table> 
    </form> 
    <?php 
  }
  else
  { 
    echo '<blockquote><span style="color:#FF0000; font-weight:bold;">Reageren op deze blog is niet mogelijk.</span></blockquote>'; 
  } 
}

Nu heb ik de boel van de if($_SERVER['REQUEST_METHOD'] == "POST") tot het einde van de else daarvan.

Dit hou ik dan nog over
PHP:
echo '<br /><hr /><br />'; 
echo '<a href="?blog=overzicht" style="font-weight:bold;">&laquo; Terug naar het overzicht</a>'; 
}
else
{ 
  // Blog bestaat niet. Geef foutmelding 
         
  echo '<span class="titel_kop">Blog niet gevonden</span><br /><br />'; 
  echo 'De blog die je zocht, bestaat niet. <a href="?blog=overzicht">Ga terug.</a>'; 
         
} 
}else{
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan